Firmar una solicitud de búsqueda de Amazon OpenSearch Service con la versión 3 de AWS SDK for PHP - AWS SDK for PHP

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Firmar una solicitud de búsqueda de Amazon OpenSearch Service con la versión 3 de AWS SDK for PHP

Amazon OpenSearch Service facilita es un servicio administrado que facilita la implementación, el funcionamiento y el escalado de Amazon OpenSearch Service, un popular motor de búsqueda y análisis de código abierto. OpenSearch Service ofrece acceso directo a la API de Amazon OpenSearch Service. Esto significa que los desarrolladores pueden utilizar las herramientas con las que están familiarizados, así como sólidas opciones de seguridad. Muchos clientes de Amazon OpenSearch Service son compatibles con la firma de solicitudes, pero si utiliza un cliente que no lo es, puede firmar solicitudes PSR-7 arbitrarias con los proveedores de credenciales y firmantes integrados de la plataforma .

Los siguientes ejemplos muestran cómo:

  • Firmar una solicitud con el protocolo de firma de AWS utilizando SignatureV4.

Todo el código de ejemplo de AWS SDK for PHP está disponible aquí en GitHub.

Credentials

Antes de ejecutar el código de ejemplo, configure sus credenciales de AWS, como se indica en Credentials. A continuación, importe AWS SDK for PHP, como se indica en Uso básico.

Firmar una solicitud de OpenSearch Service

OpenSearch Service utiliza la versión 4 de la firma. Esto significa que necesita firmar las peticiones con el nombre de la firma del servicio (en este caso es) y la región de AWS de su dominio OpenSearch Service. Encontrará una lista completa de las regiones compatibles con OpenSearch Service en la AWS página de regiones y puntos de conexión de la Referencia general de Amazon Web Services. Sin embargo, en este ejemplo, vamos a firmar solicitudes dirigidas a un dominio de OpenSearch Service de la región de us-west-2.

Tiene que proporcionar credenciales, lo que puede hacer con la cadena de proveedor predeterminada del SDK o con cualquiera de los formatos de credenciales que se describen en Credenciales para la versión 3 de AWS SDK for PHP. También necesitará una solicitud PSR-7 (que en el código siguiente se presupone que se llama $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);