访问密钥(AccessKey)常见问题

重要

本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。

本文为您介绍访问密钥(AccessKey)相关的一些常见问题。包括什么是AccessKey、如何查看AccessKey、AccessKey是否还在使用、AccessKey泄露后如何处理等。

什么是AccessKey

访问密钥AccessKey(简称AK)是阿里云提供给用户的永久访问凭据,由AccessKey IDAccessKey Secret组成的一组密钥对。

  • AccessKey ID:用于标识用户。

  • AccessKey Secret:是一个用于验证您拥有该AccessKey ID的密码。

AccessKey IDAccessKey Secret根据算法由访问控制(RAM)生成,阿里云对AccessKey IDAccessKey Secret的存储及传输均进行加密。

AccessKey不用于控制台登录,而是用于通过开发工具(API、CLI、SDK、Terraform等)访问阿里云时,发起的请求会携带AccessKey IDAccessKey Secret加密请求内容生成的签名,进行身份验证及请求合法性校验。

阿里云有几种AccessKey?

  • 阿里云账号(主账号)AccessKey

    由阿里云账号(主账号)创建,默认拥有当前账号的全部权限,可执行所有操作,一旦泄露风险极高,强烈建议不创建和使用主账号AccessKey。

  • RAM用户AccessKey

    属于RAM用户的程序访问凭证,需要先创建RAM用户,然后才能为该RAM用户创建AccessKey。RAM用户AccessKey继承RAM用户的权限,可以进行最小化权限管理。请为每一个独立业务应用分配一个独立的RAM用户和AccessKey,避免混用扩大泄露风险。

创建AccessKey后,可以查看哪些信息?

创建AccessKey后,您可以再次查看AccessKey ID、状态、最后使用云服务、最后使用时间和创建时间等基本信息。关于如何查看RAM用户的AccessKey信息,请参见查看RAM用户的AccessKey信息

创建AccessKey后,能否再次查看AccessKey ID?

可以。

创建AccessKey后,能否再次查看AccessKey Secret?

不能。为降低AccessKey泄露的风险,阿里云账号(主账号)和RAM用户的AccessKey Secret只在创建时显示,后续不支持查看,请妥善保管。

如何判断AccessKey是否还在使用?

您可以通过控制台或API查看AccessKey的最后使用时间,以此判断AccessKey是否还在使用。具体如下:

创建AccessKey后,能否修改AccessKey ID?

AccessKey ID不能修改。您只能禁用、启用或删除AccessKey。

AccessKey删除后能否恢复?

RAM提供了回收站功能,删除RAM用户的AccessKey时,会先将AccessKey移入回收站,回收站中的AccessKey支持恢复

但是,回收站中的AccessKey保存期限为30天,超过期限系统会自动清理这些AccessKey,也就是彻底删除AccessKey。您也可以在回收站中手动彻底删除Accesskey。对于彻底删除的AccessKey,无法恢复

更多信息,请参见删除RAM用户的AccessKey

警告

删除AccessKey需慎重,在使用中的AccessKey一旦删除,可能会造成您的应用系统故障。

AccessKey疑似泄露时如何处理?

具体操作,请参见AccessKey泄露处理方案

如何查询AccessKey归属的账号?

AccessKey是一种程序访问凭证,属于敏感信息,阿里云无法向您提供查询任意AccessKey归属账号的能力。

如您确实有此类需求,您可以尝试以下方法,查询您权限范围内的AccessKey归属信息:

  • 您可以使用自己的阿里云账号登录RAM控制台,在用户页面的搜索框中,输入AccessKey ID查询。如您有多个阿里云账号时,需要在各个账号中依次查询。

  • 如果您开通了资源目录,且在操作审计中创建多账号跟踪,将资源目录内所有成员的操作事件投递到日志服务SLS或对象存储OSS,您就可以在审计日志中尝试查询AccessKey归属信息。

遇到报错“There is a risk of leakage of this AccessKey.”时,如何处理?

该报错表示当前用于身份验证的AccessKey已被限制性保护。解决办法,请参见AccessKey限制性保护说明

当出现API调用被网络访问限制策略拒绝,且该拒绝不符合您的预期时,该怎么办?

问题现象

AccessKey网络访问限制策略生效后,调用来源IP地址不在允许范围内将会被拒绝,常见的报错如下:

Message: The specified parameter "AccessKeyId.AccessPolicyDenied" is not valid.
Message: code: 400, Specified access key denied due to access policy. 

解决方案

当出现调用被网络访问限制策略拒绝,且该拒绝不符合您的预期时,您可以按如下操作尝试解决:

  1. 确认被限制的AccessKey是否设置了AccessKey级网络访问限制策略。

    • 是:修改AccessKey级网络访问限制策略,将来源IP地址加入到策略中。

    • 否:继续下一步检查。

  2. 使用RAM管理员检查并修改账号级AccessKey网络访问限制策略,将来源IP地址加入到策略中。

  3. 如果还存在问题,可能考虑是因为来源IP地址不准确,您需要检查并获取准确的IP地址。

    您可以通过操作审计辅助查询AccessKey的历史调用来源IP地址。更多信息,请参见在操作审计查看历史调用IP地址