Decodifica as informações de diagnóstico do corpo da resposta de uma solicitação que é negada devido a permissões insuficientes do RAM.
Experimente agora
Testar
Autorização RAM
|
Ação |
Nível de acesso |
Tipo de recurso |
Chave de condição |
Ação dependente |
|
ram:DecodeDiagnosticMessage |
get |
*Todos os recursos.
|
Nenhuma | Nenhuma |
Parâmetros da solicitação
|
Parâmetro |
Tipo |
Obrigatório |
Descrição |
Exemplo |
| EncodedDiagnosticMessage |
string |
Não |
As informações de diagnóstico codificadas obtidas do campo AccessDeniedDetail.EncodedDiagnosticMessage no corpo da resposta quando uma solicitação de API é negada devido a permissões insuficientes. Este parâmetro é usado para decodificar as informações de diagnóstico de acesso negado e é obrigatório ao chamar esta operação. |
AQEAAAAAZBgxr0U1MjA1NTM1LUM4BBktMzE5RS1CODgxLUU1QTI0RDNFQTM1**** |
Elementos de resposta
|
Elemento |
Tipo |
Descrição |
Exemplo |
|
object |
O resultado da resposta. |
||
| RequestId |
string |
O ID da solicitação. |
D2331703-AADF-5564-BA9B-26CD51A33BA0 |
| DecodedDiagnosticMessage |
object |
As informações de diagnóstico decodificadas. |
|
| ExplicitDeny |
boolean |
Indica se a solicitação é explicitamente negada. Valores válidos:
|
true |
| NoPermissionPolicyType |
string |
O tipo da política que resulta no erro de acesso negado. Valores válidos:
|
AccountLevelIdentityBasedPolicy |
| AuthAction |
string |
A ação usada para autenticação na solicitação do usuário. |
ram:DecodeDiagnosticMessage |
| AuthResource |
string |
O recurso usado para autenticação na solicitação do usuário. |
* |
| AuthPrincipal |
object |
O principal usado para autenticação na solicitação do usuário. |
|
| AuthPrincipalType |
string |
O tipo de identidade usado para autenticação na solicitação do usuário. Valores válidos:
|
SubUser |
| AuthPrincipalOwnerId |
string |
O UID da conta Alibaba Cloud à qual a identidade usada para autenticação na solicitação do usuário pertence. |
196813200012**** |
| AuthPrincipalDisplayName |
string |
O identificador de identidade usado para autenticação na solicitação do usuário. O valor varia de acordo com o tipo de identidade:
|
28877424437521**** |
| AuthConditions |
array<object> |
A lista de condições usadas para autenticação na solicitação do usuário. |
|
|
object |
A condição de autenticação. |
||
| ConditionKey |
string |
A chave de condição. |
acs:SourceIp |
| ConditionValues |
array |
A lista de valores correspondentes à chave de condição. |
|
|
string |
O valor de condição correspondente à chave de condição. |
172.16.215.218 |
|
| MatchedPolicies |
array<object> |
A lista de políticas correspondentes durante a autenticação. |
|
|
object |
A política correspondente durante a autenticação. |
||
| Effect |
string |
O efeito da política. Valores válidos:
|
Deny |
| PolicyIdentifier |
string |
As informações do nome da política. O valor varia de acordo com o tipo de política:
|
MyPolicyName |
| PolicyType |
string |
O tipo da política. Valores válidos:
|
Custom |
| PolicyVersion |
string |
O número da versão da política. Nota
Apenas uma política personalizada possui um número de versão. |
v1 |
| AttachedEntityType |
string |
O tipo da entidade à qual a política está anexada. Valores válidos:
|
RamUser |
| AttachedScope |
string |
O escopo ao qual a política está anexada. Valores válidos:
|
Account |
Exemplos
Resposta de sucesso
JSON formato
{
"RequestId": "D2331703-AADF-5564-BA9B-26CD51A33BA0",
"DecodedDiagnosticMessage": {
"ExplicitDeny": true,
"NoPermissionPolicyType": "AccountLevelIdentityBasedPolicy",
"AuthAction": "ram:DecodeDiagnosticMessage",
"AuthResource": "*",
"AuthPrincipal": {
"AuthPrincipalType": "SubUser",
"AuthPrincipalOwnerId": "196813200012****",
"AuthPrincipalDisplayName": "28877424437521****"
},
"AuthConditions": [
{
"ConditionKey": "acs:SourceIp",
"ConditionValues": [
"172.16.215.218"
]
}
],
"MatchedPolicies": [
{
"Effect": "Deny",
"PolicyIdentifier": "MyPolicyName",
"PolicyType": "Custom",
"PolicyVersion": "v1",
"AttachedEntityType": "RamUser",
"AttachedScope": "Account"
}
]
}
}
Códigos de erro
|
Código de status HTTP |
Código de erro |
Mensagem de erro |
Descrição |
|---|---|---|---|
| 400 | NotSupport | This method can only be invoked by customer, sub user and assumed role user. | |
| 400 | EncodedMessageExpire | The EncodedDiagnosticMessage is expired. | |
| 403 | NoPermission | You do not have the required permissions. | |
| 404 | SearchInaccurate | The search result is inaccurate, please retry later. | |
| 404 | EntityNotExist | The specific DecodedDiagnosticMessage cannot be found. | |
| 429 | TooManyRequests | Too many search requests at same time, please retry later. |
Consulte Códigos de Erro para uma lista completa.
Notas de versão
Consulte Notas de Versão para uma lista completa.