기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
AWS SDK for PHP 버전 3으로 Amazon OpenSearch Service 검색 요청에 서명
Amazon OpenSearch Service는 인기 있는 오픈 소스 검색 및 분석 엔진인 Amazon OpenSearch Service를 손쉽게 배포, 운영, 확장할 수 있는 관리형 서비스입니다. OpenSearch Service를 사용하면 Amazon OpenSearch Service로 직접 액세스할 수 있습니다. 따라서 개발자는 친숙한 도구뿐 아니라 확실한 보안 옵션을 사용할 수 있습니다. 많은 Amazon OpenSearch Service 클라이언트는 요청 서명을 지원하지만, 지원하지 않는 클라이언트를 사용하는 경우 AWS SDK for PHP의 내장 보안 인증 공급자 및 서명자를 사용하여 임의 PSR-7 요청에 서명할 수 있습니다.
다음 예제에서는 다음과 같은 작업을 하는 방법을 보여줍니다.
-
SignatureV4를 사용해 AWS 서명 프로토콜에 따라 요청에 서명합니다.
AWS SDK for PHP에 대한 모든 예제 코드는 GitHub
보안 인증
예제 코드를 실행하기 전에 보안 인증에 설명된 대로 AWS 보안 인증을 구성합니다. 그 다음 기본 사용법에 설명된 대로 AWS SDK for PHP를 가져옵니다.
OpenSearch Service 요청 서명
OpenSearch 서비스는 Signature 버전 4를 사용합니다. 따라서 서비스의 서명 이름(이 경우 es
)과 OpenSearch Service 도메인의 AWS 리전에 대해 요청에 서명해야 합니다. OpenSearch 서비스가 지원하는 지역의 전체 목록은 Amazon Web Services 일반 참조의 AWS 리전 및 엔드포인트 페이지에서 찾을 수 있습니다. 하지만 이번 예제에서는 us-west-2
리전의 OpenSearch Service 도메인에 대해 요청에 서명합니다.
보안 인증을 제공해야 하며, SDK의 기본 공급자 체인 또는 AWS SDK for PHP 버전 3 보안 인증에 설명된 모든 형식의 보안 인증을 사용하여 이렇게 할 수 있습니다. PSR-7 요청도 필요합니다(아래 코드에서 $psr7Request
라는 이름으로 가정됨).
// Pull credentials from the default provider chain $provider = Aws\Credentials\CredentialProvider::defaultProvider(); $credentials = call_user_func($provider)->wait(); // Create a signer with the service's signing name and Region $signer = new Aws\Signature\SignatureV4('es', 'us-west-2'); // Sign your request $signedRequest = $signer->signRequest($psr7Request, $credentials);