

适用于 JavaScript 的 AWS SDK v2 已终止支持。建议您迁移到 [适用于 JavaScript 的 AWS SDK v3](https://docs.aws.amazon.com//sdk-for-javascript/v3/developer-guide/)。有关更多详情和如何迁移的信息，请参阅本[公告](https://aws.amazon.com/blogs//developer/announcing-end-of-support-for-aws-sdk-for-javascript-v2/)。

# 设置凭证
<a name="setting-credentials"></a>

AWS 使用凭证来识别谁正在调用服务以及是否允许访问所请求的资源。

无论是在 Web 浏览器中运行还是在 Node.js 服务器中运行，您的 JavaScript 代码都必须先获取有效凭证，然后才能通过 API 访问服务。可以使用 `AWS.Config` 或针对每个服务在配置对象上全局设置凭证，方法是将凭证直接传递给服务对象。

有几种方法可以设置在 Node.js 和 Web 浏览器中的 JavaScript 之间不同的凭证。本部分中的主题介绍如何在 Node.js 或 Web 浏览器中设置凭证。在每种情况下，选项以推荐顺序显示。

## 凭证的最佳实践
<a name="credentials-best-practices"></a>

正确设置凭证可确保您的应用程序或浏览器脚本可以访问所需的服务和资源，同时最大限度地减少可能影响关键任务型应用程序或危及敏感数据的安全问题。

设置凭证时应用的一个重要原则是始终授予您的任务所需的最小权限。提供对资源的最小权限并根据需要添加更多权限更安全，而不是提供超过最小权限的权限，因此需要修复以后可能发现的安全问题。例如，除非您需要读取和写入单独的资源（例如 Amazon S3 桶或 DynamoDB 表中的对象），否则请将这些权限设置为只读。

有关授予最低权限的更多信息，请参阅《IAM 用户指南》**最佳实践主题中的[授予最低权限](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege)部分。

**警告**  
虽然可以这样做，但我们建议您不要在应用程序或浏览器脚本中对凭证进行硬编码。硬编码凭证存在泄露敏感信息的风险。

有关如何管理访问密钥的更多信息，请参阅《AWS 一般参考》中的[管理 AWS 访问密钥的最佳实践](https://docs.aws.amazon.com/general/latest/gr/aws-access-keys-best-practices.html)。

**Topics**
+ [凭证的最佳实践](#credentials-best-practices)
+ [在 Node.js 中设置凭证](setting-credentials-node.md)
+ [在 Web 浏览器中设置凭证](setting-credentials-browser.md)