适用于 PHP 的 Amazon SDK 版本 3 中的内置凭证提供程序 - 适用于 PHP 的 Amazon SDK
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

适用于 PHP 的 Amazon SDK 版本 3 中的内置凭证提供程序

SDK 提供了多个内置凭证提供程序,您可以单独使用这些提供程序,也可以在自定义凭证提供程序链中结合使用。

当您在创建服务客户端期间指定凭证提供程序时,SDK 会尝试仅使用指定的凭证提供程序来加载凭证。它不使用默认凭证提供程序链。如果您知道服务客户端需要使用 instanceProfile 提供程序,可通过在服务客户端构造函数中指定 instanceProfile 提供程序来绕过默认链:

use Aws\Credentials\CredentialProvider; use Aws\S3\S3Client; $provider = CredentialProvider::instanceProfile(); // Be sure to memoize the credentials $memoizedProvider = CredentialProvider::memoize($provider); $client = new S3Client([ 'region' => 'us-west-2', 'credentials' => $memoizedProvider // The default credential provider chain is not used. ]);
重要

每次执行 API 操作时均会调用凭证提供程序。如果加载凭证是一项代价高昂的任务(例如从磁盘或网络资源加载)或者凭证未由提供程序缓存,请考虑将您的凭证提供程序包装在 Aws\Credentials\CredentialProvider::memoize 函数中。系统会自动记住开发工具包使用的默认凭证提供程序。