撤销临时安全凭证的权限
临时安全凭证在过期之前一直有效,临时安全凭证的有效期可以通过duration_seconds参数进行设定,取值范围为900秒(15分钟)到信任委托的最大会话持续时间,不设置时默认为3600 秒(1小时)。您可以调整信任委托的信任策略禁止生成新的临时安全凭证,但是还需要更改信任委托的身份策略,以阻止他人通过已泄露的临时安全凭证进行恶意账号活动。每次使用临时安全凭证向华为云发出请求时,系统都会重新评估分配给该临时安全凭证的权限。从信任委托中删除所有权限后,使用这些临时安全凭证的华为云请求会失败,不过策略更新可能需要几分钟时间才能生效。支持撤销的云服务委托的列表请参见支持身份策略与信任委托的云服务列表。
撤销所有临时安全凭证的访问
此方法会阻止所有使用临时安全凭证签名的请求,临时安全凭证由AssumeAgency API切换目标信任委托生成。请编辑或删除为信任委托关联的身份策略,如果选择更新策略,可以调整为如下策略。所做的更改会影响与该信任委托关联的所有临时安全凭证的权限,包括在更改信任委托身份策略之前颁发的临时安全凭证、正在生成或者将要生成的临时安全凭证。

- 如果存在允许主体访问的资源策略,则必须调整资源策略,添加显式拒绝语句。
- 只支持撤销部分云服务的临时安全凭证的权限,具体请参见支持身份策略与信任委托的云服务列表。
{ "Version": "5.0", "Statement": [{ "Effect": "Deny", "Action": [ "*" ], "Resource": [ "*" ] }] }
撤销特定临时安全凭证的访问
如果您想要阻止特定临时安全凭证的访问,而不影响其他临时安全凭证的访问,可以使用条件键。

- 如果存在允许主体访问的资源策略,则必须调整资源策略,添加显式拒绝语句。
- 只支持撤销部分云服务的临时安全凭证的权限,具体请参见支持身份策略与信任委托的云服务列表。
拒绝特定时间前生成的临时安全凭证的访问
通过在身份策略的Condition元素中指定g:TokenIssueTime键的值,以撤销特定时间前生成的临时安全凭证的访问权限。当g:TokenIssueTime的值早于指定的日期和时间时,该身份策略会拒绝所有访问,g:TokenIssueTime的值对应临时安全凭证的签发时间。g:TokenIssueTime值仅存在于使用临时安全凭证签名的请求中,因此该身份策略中的Deny语句不会影响使用永久访问密钥签名的请求。
通过将此身份策略附加到信任委托上,可以拒绝特定时间前生成的临时安全凭证签名的请求,临时安全凭证由AssumeAgency API切换目标信任委托生成。
{ "Version": "5.0", "Statement": [{ "Effect": "Deny", "Action": [ "*" ], "Resource": [ "*" ], "Condition": { "DateLessThan": { "g:TokenIssueTime": "2024-03-01T12:00:00Z" } } }] }
拒绝特定主体临时安全凭证的访问
通过在身份策略的Condition元素中指定g:PrincipalUrn键的值,以撤销特定主体生成的临时安全凭证的访问权限。目前临时安全凭证只支持通过委托或者信任委托方式获取,因此获取到的临时安全凭证也称为委托或信任委托会话,委托或信任委托会话的URN格式为sts::<account-id>:assumed-agency:<agency-name>/<session-name>。注意:目前通过IAM控制台切换委托或者信任委托后的会话URN的session-name固定为null,通过AssumeAgency API切换委托或者信任委托时session-name允许您自己指定。
{ "Version": "5.0", "Statement": [{ "Effect": "Deny", "Action": [ "*" ], "Condition": { "StringEquals": { "g:PrincipalUrn": [ "sts::account-id:assumed-agency:agency-name/null" ] } } }] }
{ "Version": "5.0", "Statement": [{ "Effect": "Deny", "Action": [ "*" ], "Condition": { "StringEquals": { "g:PrincipalUrn": [ "sts::account-id:assumed-agency:agency-name/session-name" ] } } }] }
拒绝特定源身份信息的临时安全凭证的访问
过在身份策略的Condition元素中指定g:SourceIdentity键的值,以撤销特定源身份信息的临时安全凭证的访问权限。只要在调用AssumeAgency API时指定了源身份信息,就可以使用此方法来进行撤销。一旦设置源身份信息后,g:SourceIdentity键的值会存在于该信任委托会话的所有请求调用中,并会一直持续下去,即便您通过委托链(信任委托再切换其他信任委托)也无法修改。注意:目前通过IAM控制台切换信任委托时无法设置源身份信息,因此该方法无法拒绝切换信任委托后的控制台请求。
{ "Version": "5.0", "Statement": [{ "Effect": "Deny", "Action": [ "*" ], "Condition": { "StringEquals": { "g:SourceIdentity": [ "123" ] } } }] }