Crée une politique d'autorisations pour configurer les clés et les secrets accessibles.
Remarques sur l'utilisation
Pour effectuer des opérations cryptographiques et récupérer les valeurs des secrets, les applications autonomes doivent utiliser une clé client afin d'accéder à une instance Key Management Service (KMS). Le processus suivant décrit la création d'un point d'accès applicatif (AAP) basé sur une clé client :
Créez une règle de contrôle d'accès : configurez les adresses IP privées ou les plages CIDR privées autorisées à accéder à une instance KMS. Pour plus d'informations, consultez la rubrique CreateNetworkRule.
Créez une politique d'autorisations : configurez les clés et les secrets accessibles, puis associez des règles de contrôle d'accès à ces ressources.
Créez un AAP : configurez une méthode d'authentification et associez une politique d'autorisations à un AAP. Pour plus d'informations, consultez la rubrique CreateApplicationAccessPoint.
Créez une clé client : configurez le mot de passe de chiffrement et la période de validité d'une clé client, puis associez cette clé à un AAP. Pour plus d'informations, consultez la rubrique CreateClientKey.
Débogage
Paramètres de requête
|
Parameter |
Type |
Required |
Example |
Description |
| Action | String | Yes | CreatePolicy | Opération à effectuer. Définissez la valeur sur CreatePolicy. |
| Name | String | Yes | policy_test | Nom de la politique d'autorisations. |
| Description | String | No | policy description | Description. |
| KmsInstance | String | No | kst-hzz634e67d126u9p9**** | Portée de la politique d'autorisations. Spécifiez l'instance KMS à laquelle vous souhaitez accéder. |
| Permissions | String | Yes | ["RbacPermission/Template/CryptoServiceKeyUser", "RbacPermission/Template/CryptoServiceSecretUser"] | Opérations autorisées. Valeurs valides :
Vous pouvez sélectionner les deux options. |
| Resources | String | Yes | ["secret/acs/ram/user/ram-secret", "secret/acs/ram/user/acr-master", "key/key-hzz63d9c8d3dfv8cv****"] | Clé et secret accessibles.
|
| AccessControlRules | Map | No | {"NetworkRules":["kst-hzz62ee817bvyyr5x****.efkd","kst-hzz62ee817bvyyr5x****.eyyp"]} | Nom de la règle de contrôle d'accès. Remarque Pour plus d'informations sur la consultation des règles de contrôle d'accès créées, consultez la rubrique ListNetworkRules. |
Paramètres de réponse
Parameter |
Type |
Example |
Description |
| RequestId | String | 3bf02f7a-015b-4f34-be0f-c4543fda2d33 | ID de la requête, utilisé pour localiser et résoudre les problèmes. |
| Arn | String | acs:kms:cn-hangzhou:119285303511****:policy/policy_test | ARN de la politique d'autorisations. |
| Name | String | policy_test | Nom de la politique d'autorisations. |
| Description | String | policy description | Description. |
| KmsInstance | String | kst-hzz634e67d126u9p9**** | Portée de la politique d'autorisations. |
| Permissions | String | ["RbacPermission/Template/CryptoServiceKeyUser", "RbacPermission/Template/CryptoServiceSecretUser"] | Opérations autorisées. |
| Resources | String | ["secret/acs/ram/user/ram-secret", "secret/acs/ram/user/acr-master", "key/key-hzz63d9c8d3dfv8cv****"] | Clé et secret accessibles.
|
| AccessControlRules | String | {"NetworkRules":["kst-hzz62ee817bvyyr5x****.efkd","kst-hzz62ee817bvyyr5x****.eyyp"]} | Nom de la règle de contrôle d'accès. |
Exemples
Exemple de requête
http(s)://[Endpoint]/?Action=CreatePolicy
&Name=policy_test
&Description=policy description
&KmsInstance=kst-hzz634e67d126u9p9****
&Permissions=["RbacPermission/Template/CryptoServiceKeyUser", "RbacPermission/Template/CryptoServiceSecretUser"]
&Resources=["secret/acs/ram/user/ram-secret", "secret/acs/ram/user/acr-master", "key/key-hzz63d9c8d3dfv8cv****"]
&Common request parameters
Exemple de réponse réussie
XML format
HTTP/1.1 200 OK
Content-Type:application/xml
<CreatePolicyResponse>
<RequestId>3bf02f7a-015b-4f34-be0f-c4543fda2d33</RequestId>
<Arn>acs:kms:cn-hangzhou:119285303511****:policy/policy_test</Arn>
<Name>policy_test</Name>
<Description>policy description</Description>
<KmsInstance>kst-hzz634e67d126u9p9****</KmsInstance>
<Permissions>["RbacPermission/Template/CryptoServiceKeyUser", "RbacPermission/Template/CryptoServiceSecretUser"]</Permissions>
<Resources>["secret/acs/ram/user/ram-secret", "secret/acs/ram/user/acr-master", "key/key-hzz63d9c8d3dfv8cv****"]</Resources>
<AccessControlRules>{"NetworkRules":["kst-hzz62ee817bvyyr5x****.efkd","kst-hzz62ee817bvyyr5x****.eyyp"]}</AccessControlRules>
</CreatePolicyResponse>
JSON format
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "3bf02f7a-015b-4f34-be0f-c4543fda2d33",
"Arn" : "acs:kms:cn-hangzhou:119285303511****:policy/policy_test",
"Name" : "policy_test",
"Description" : "policy description",
"KmsInstance" : "kst-hzz634e67d126u9p9****",
"Permissions" : "[\"RbacPermission/Template/CryptoServiceKeyUser\", \"RbacPermission/Template/CryptoServiceSecretUser\"]",
"Resources" : "[\"secret/acs/ram/user/ram-secret\", \"secret/acs/ram/user/acr-master\", \"key/key-hzz63d9c8d3dfv8cv****\"]",
"AccessControlRules" : "{\"NetworkRules\":[\"kst-hzz62ee817bvyyr5x****.efkd\",\"kst-hzz62ee817bvyyr5x****.eyyp\"]}"
}
Codes d'erreur
|
HTTP status code |
Error code |
Error message |
Description |
|
400 |
InvalidParameter |
The specified parameter is not valid. |
Le paramètre spécifié n'est pas valide. |
|
404 |
InvalidAccessKeyId.NotFound |
The Access Key ID provided does not exist in our records. |
L'AccessKey ID spécifié n'existe pas. |
Pour obtenir la liste des codes d'erreur, consultez la rubrique Codes d'erreur du service.