Neptune에서 오류 발생 핸드셰이크 오류는 IAM 지원 Neptune 인스턴스에 연결할 때 흔히 발생하는 문제입니다. IAM(Identity and Access Management)은 AWS 리소스에 대한 액세스를 관리하고 제어하는 Amazon Web Services(AWS)의 기능입니다. 그러나 IAM 지원 Neptune 인스턴스에 연결하려고 하면 핸드셰이크 오류가 발생할 수 있습니다. 이 오류는 IAM 역할에 대한 잘못된 권한이나 Neptune 인스턴스가 잘못 설정되어 발생할 수 있습니다. 이 문제에 대한 대응으로 이 문서에서는 IAM 지원 Neptune 인스턴스에 대한 원활한 연결을 보장하기 위해 이 오류를 해결하는 방법을 자세히 소개합니다.
iam이 활성화된 aws neptune 인스턴스가 있고 인증 없이 CRUD 작업을 수행할 수 있지만 인증을 활성화하면 핸드셰이크 오류 로그에 오류가 발생합니다.
참고: 람다 함수에는 완전한 Neptune 권한이 있습니다
으아악오류 로그: 연결 상태를 닫힘으로 설정하여 새 연결을 인스턴스화할 수 없습니다. 연결 풀에 대한 새 연결 생성 오류: websocket: 핸드셰이크 오류 'e0104: 성공적인 연결을 설정할 수 없습니다: websocket: 핸드셰이크 오류'
참고: iam 인증이 비활성화되어 있으면 쿼리를 실행할 수 있습니다. 도와주세요.
요청에 서명을 시도했지만 인증에 실패했습니다.
필요한 모든 권한이 부여된 경우 Neptune iam과 함께 작동하려면 코드에 수정해야 할 몇 가지 문제가 있습니다.
neptune-db
,而不是 neptune
여야 합니다. *gremlingo.driverremoteconnectionsettings
应为 *gremlingo.driverremoteconnectionsettings
. settings.authinfo.header
使用的标头实际上不是签名者返回的标头,而是原始请求的标头,因此应该是settings.authinfo.header = req.header
. 모두 종합하면 //signing request
아래의 코드 블록은 다음과 같습니다.
한 가지 주의할 점은 현재 gremlin-go에서는 인증 토큰의 자동 새로 고침을 허용할 수 있는 방법이 없다는 것입니다. 즉, 만료 후에는 새 연결을 설정해야 합니다.
도움이 되기를 바랍니다.
위 내용은 IAM이 활성화된 Neptune 인스턴스에 연결할 때 Neptune에서 잘못된 핸드셰이크 오류가 발생합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!