本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
签署亚马逊 OpenSearch 使用以下命令的服务搜索请求Amazon SDK for PHP版本 3
亚马逊 OpenSearch Service 是一种托管服务,让用户能够轻松地部署、操作和扩展 Amazon Amazon Amazon OpenSearch 服务,一个流行的开源搜索和分析引擎。 OpenSearch 此服务可让您直接访问亚马逊 OpenSearch 服务 API。这意味着,开发人员可以使用他们熟悉的工具以及强大的安全选项,如将 IAM 用户和角色用于访问控制。许多亚马逊 OpenSearch 服务客户端支持请求签名,但如果您使用的客户端不支持,则可以使用内置的凭证提供程序和签署人对任意 PSR-7 请求签名Amazon SDK for PHP.
以下示例演示如何:
-
使用签名申请Amazon使用签名协议SignatureV4.
的所有示例代码Amazon SDK for PHP可用此处 GitHub
凭证
运行示例代码之前,请配置您的Amazon凭证来提供,如中所述设置凭证. 然后导入Amazon SDK for PHP,如中所述基本用法.
签名 OpenSearch 服务请求
OpenSearch 服务使用签名版本 4. 这意味着,您需要针对服务的签名名称对请求签名 (es
,在此示例中为)和Amazon您的区域 OpenSearch 服务域。支持的区域的完整列表 OpenSearch 可以找到服务在Amazon区域和终端节点在Amazon Web Services 一般参考中,。但在本示例中,我们将针对请求签名 OpenSearch 中的服务域us-west-2
区域。
您需要提供程序,可以通过开发工具包的默认凭证提供程序链或通过中介绍的任何形式的凭证来提供的凭证Amazon 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);