Assinar uma solicitação de pesquisa do Amazon OpenSearch Service com a AWS SDK for PHP versão 3 - AWS SDK for PHP

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Assinar uma solicitação de pesquisa do Amazon OpenSearch Service com a AWS SDK for PHP versão 3

O Amazon OpenSearch Service é um serviço gerenciado que facilita implantar, operar e escalar o Amazon OpenSearch Service, um conhecido mecanismo de pesquisa e análise de código aberto. O OpenSearch Service oferece acesso direto à API do Amazon OpenSearch Service. Isso significa que os desenvolvedores podem usar as ferramentas com as quais estão familiarizados, bem como opções de segurança robustas. Muitos clientes do Amazon OpenSearch Service oferecem suporte à assinatura de solicitações, mas, caso esteja diante de um cliente que não oferece, é possível assinar solicitações PSR-7 arbitrárias com os provedores de credenciais e assinantes integrados do AWS SDK for PHP.

Os exemplos a seguir mostram como:

  • Assine uma solicitação com o protocolo de assinatura da AWS usando o SignatureV4.

O código de exemplo completo do AWS SDK for PHP está disponível aqui no GitHub.

Credenciais

Antes de executar o código de exemplo, configure suas credenciais da AWS, conforme descrito em Credenciais. Em seguida, importe o AWS SDK for PHP, conforme descrito em Uso básico.

Como assinar uma solicitação do OpenSearch Service

O OpenSearch Service usa a versão 4 do Signature. Isso significa que você precisa assinar solicitações com o nome de assinatura do serviço (es, neste caso) e a região da AWS do seu domínio do OpenSearch Service. Uma lista completa de regiões compatíveis com o OpenSearch Service pode ser encontrada na página Regiões e endpoints da AWS na Referência geral da Amazon Web Services. No entanto, neste exemplo, assinaremos solicitações para um domínio do OpenSearch Service na região us-west-2.

É necessário fornecer credenciais, o que pode ser feito com a cadeia de provedores padrão do SDK ou com qualquer formulário de credenciais descrito em Credenciais do AWS SDK for PHP versão 3. Também será necessária uma solicitação PSR-7 (assumida no código abaixo com o nome $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);