Crea una política de permisos para configurar las claves y los secretos a los que se permite el acceso.
Notas de uso
Para ejecutar operaciones criptográficas y recuperar valores de secretos, las aplicaciones autogestionadas deben usar una clave de cliente para acceder a una instancia de Key Management Service (KMS). A continuación se muestra el proceso para crear un punto de acceso de aplicación (AAP) basado en clave de cliente:
Cree una regla de control de acceso: configure las direcciones IP privadas o los bloques CIDR privados que pueden acceder a una instancia de KMS. Para obtener más información, consulte CreateNetworkRule.
Cree una política de permisos: configure las claves y los secretos a los que se permite el acceso, y vincule reglas de control de acceso a dichas claves y secretos.
Cree un AAP: configure un método de autenticación y vincule una política de permisos al AAP. Para obtener más información, consulte CreateApplicationAccessPoint.
Cree una clave de cliente: configure la contraseña de cifrado y el periodo de validez de una clave de cliente, y vincule dicha clave a un AAP. Para obtener más información, consulte CreateClientKey.
Depuración
Parámetros de solicitud
|
Parámetro |
Tipo |
Obligatorio |
Ejemplo |
Descripción |
| Action | String | Sí | CreatePolicy | La operación que desea ejecutar. Establezca el valor en CreatePolicy. |
| Name | String | Sí | policy_test | El nombre de la política de permisos. |
| Description | String | No | policy description | La descripción. |
| KmsInstance | String | No | kst-hzz634e67d126u9p9**** | El alcance de la política de permisos. Especifique la instancia de KMS a la que desea acceder. |
| Permissions | String | Sí | ["RbacPermission/Template/CryptoServiceKeyUser", "RbacPermission/Template/CryptoServiceSecretUser"] | Las operaciones permitidas. Valores válidos:
Puede seleccionar ambas opciones. |
| Resources | String | Sí | ["secret/acs/ram/user/ram-secret", "secret/acs/ram/user/acr-master", "key/key-hzz63d9c8d3dfv8cv****"] | La clave y el secreto a los que se permite el acceso.
|
| AccessControlRules | Map | No | {"NetworkRules":["kst-hzz62ee817bvyyr5x****.efkd","kst-hzz62ee817bvyyr5x****.eyyp"]} | El nombre de la regla de control de acceso. Nota Para obtener más información sobre cómo consultar las reglas de control de acceso creadas, consulte ListNetworkRules. |
Parámetros de respuesta
Parámetro |
Tipo |
Ejemplo |
Descripción |
| RequestId | String | 3bf02f7a-015b-4f34-be0f-c4543fda2d33 | El ID de la solicitud, que se utiliza para localizar y solucionar problemas. |
| Arn | String | acs:kms:cn-hangzhou:119285303511****:policy/policy_test | El ARN de la política de permisos. |
| Name | String | policy_test | El nombre de la política de permisos. |
| Description | String | policy description | La descripción. |
| KmsInstance | String | kst-hzz634e67d126u9p9**** | El alcance de la política de permisos. |
| Permissions | String | ["RbacPermission/Template/CryptoServiceKeyUser", "RbacPermission/Template/CryptoServiceSecretUser"] | Las operaciones permitidas. |
| Resources | String | ["secret/acs/ram/user/ram-secret", "secret/acs/ram/user/acr-master", "key/key-hzz63d9c8d3dfv8cv****"] | La clave y el secreto a los que se permite el acceso.
|
| AccessControlRules | String | {"NetworkRules":["kst-hzz62ee817bvyyr5x****.efkd","kst-hzz62ee817bvyyr5x****.eyyp"]} | El nombre de la regla de control de acceso. |
Ejemplos
Solicitudes de ejemplo
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
Respuestas exitosas de ejemplo
Formato XML
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>
Formato JSON
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\"]}"
}
Códigos de error
|
Código de estado HTTP |
Código de error |
Mensaje de error |
Descripción |
|
400 |
InvalidParameter |
The specified parameter is not valid. |
El parámetro especificado no es válido. |
|
404 |
InvalidAccessKeyId.NotFound |
The Access Key ID provided does not exist in our records. |
El AccessKey ID especificado no existe. |
Para obtener una lista de códigos de error, consulte Códigos de error del servicio.