Décode les informations de diagnostic des autorisations à partir du corps de la réponse d'une requête refusée en raison d'autorisations RAM manquantes.
Testez maintenant
Testez cette API dans OpenAPI Explorer, sans signature manuelle. Les appels réussis génèrent automatiquement du code SDK correspondant à vos paramètres. Téléchargez-le avec une sécurité intégrée des identifiants pour une utilisation locale. Testez cette API dans OpenAPI Explorer, sans signature manuelle. Les appels réussis génèrent automatiquement du code SDK correspondant à vos paramètres. Téléchargez-le avec une sécurité intégrée des identifiants pour une utilisation locale.
Test
Autorisation RAM
|
ram:DecodeDiagnosticMessage |
get |
*All Resource
|
Aucune | Aucune |
Paramètres de requête
|
Paramètre |
Type |
Requis |
Description |
Exemple |
| EncodedDiagnosticMessage |
string |
Non |
Le message de diagnostic encodé obtenu à partir du champ AccessDeniedDetail.EncodedDiagnosticMessage dans le corps de la réponse lorsqu'une requête d'API est refusée en raison d'autorisations insuffisantes. Transmettez ce paramètre pour décoder les informations de diagnostic des autorisations lors de l'appel de cette opération. |
AQEAAAAAZBgxr0U1MjA1NTM1LUM4BBktMzE5RS1CODgxLUU1QTI0RDNFQTM1**** |
Éléments de réponse
|
Élément |
Type |
Description |
Exemple |
|
object |
La réponse. |
||
| RequestId |
string |
L'identifiant de la requête. |
D2331703-AADF-5564-BA9B-26CD51A33BA0 |
| DecodedDiagnosticMessage |
object |
Le message de diagnostic décodé. |
|
| ExplicitDeny |
boolean |
Indique si le refus est explicite. Valeurs valides :
|
true |
| NoPermissionPolicyType |
string |
Le type de stratégie qui a causé le refus d'autorisation. Valeurs valides :
|
AccountLevelIdentityBasedPolicy |
| AuthAction |
string |
L'action utilisée pour l'authentification dans la requête de l'utilisateur. |
ram:DecodeDiagnosticMessage |
| AuthResource |
string |
La ressource utilisée pour l'authentification dans la requête de l'utilisateur. |
* |
| AuthPrincipal |
object |
Le principal utilisé pour l'authentification dans la requête de l'utilisateur. |
|
| AuthPrincipalType |
string |
The identity type used for authentication in the user request. Valeurs valides :
|
SubUser |
| AuthPrincipalOwnerId |
string |
The Alibaba Cloud account UID of the identity used for authentication in the user request. |
196813200012**** |
| AuthPrincipalDisplayName |
string |
The identity identifier used for authentication in the user request, as follows:
|
28877424437521**** |
| AuthConditions |
array<object> |
La liste des conditions utilisées pour l'authentification dans la requête de l'utilisateur. |
|
|
object |
Une condition d'authentification. |
||
| ConditionKey |
string |
The key of the authentication condition. |
acs:SourceIp |
| ConditionValues |
array |
The list of values corresponding to the authentication condition key. |
|
|
string |
A condition value corresponding to the authentication condition key. |
172.16.215.218 |
|
| MatchedPolicies |
array<object> |
La liste des stratégies correspondantes lors de l'authentification. |
|
|
object |
Une stratégie correspondante lors de l'authentification. |
||
| Effect |
string |
The policy effect. Valeurs valides :
|
Deny |
| PolicyIdentifier |
string |
The policy name, as follows:
|
MyPolicyName |
| PolicyType |
string |
The policy type. Valeurs valides :
|
Custom |
| PolicyVersion |
string |
The policy version number. Remarque
Only custom policies have version numbers. |
v1 |
| AttachedEntityType |
string |
The entity type to which the policy is attached. Valeurs valides :
|
RamUser |
| AttachedScope |
string |
The scope to which the policy is attached. Valeurs valides :
|
Account |
Exemples
JSON format
{
"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"
}
]
}
}
Codes d'erreur
|
Code de statut HTTP |
Code d'erreur |
Message d'erreur |
Description |
|---|---|---|---|
| 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. |
Consultez Codes d'erreur pour la liste complète.
Notes de version
Consultez Notes de version pour la liste complète.