Conceder, cambiar de versión o revocar una capacidad
Autoriza a un actor criptográfico a realizar operaciones nombradas sobre claves nombradas dentro de un contexto de intercambio, mueve una concesión a otra versión de su política de restricción, o retira la concesión.
Quién puede hacerlo
Un administrador del tenant o un gestor de claves del tenant. La consola ofrece Nueva concesión solo a una persona que tiene el permiso para crear concesiones de capacidad, Revocar solo con el permiso para revocarlas, y Cambiar versión solo con el permiso para volver a fijarlas. Una concesión que daría al actor un permiso de operación que todavía no tiene también requiere el permiso para asignar roles a los actores.
Esto es para los tenants que componen la autorización a mano. Un tenant SIMPLE usa en su lugar los Casos de Uso Internos, y la plataforma le rechaza estos cambios.
Antes de empezar
- El actor criptográfico existe y está activo, y no pertenece a ningún caso de uso interno.
- Las claves existen, y su propósito admite las operaciones que vas a conceder. Una concesión que escribe con su clave (
ENCRYPToSIGN) necesita una clave activa. - Un contexto de intercambio activo que no pertenezca a ningún caso de uso interno.
- De forma opcional, una política de restricción que limite cómo se puede usar la concesión. Consulta Definir una política de restricción para las concesiones.
Pasos
- Abre Concesiones de capacidad desde la barra lateral del tenant.
- Para conceder una capacidad, selecciona Nueva concesión y completa cada paso, seleccionando Siguiente entre ellos:
- El actor que recibe la concesión.
- Las capacidades:
ENCRYPT,DECRYPT,SIGNyVERIFYse pueden combinar;REENCRYPToRESIGNva sola en su concesión. - Las claves: una Clave del activo o, para
REENCRYPTyRESIGN, uno o más pares de una clave de origen y una clave de destino, agregando cada uno con Agregar par. Para las operaciones de una sola clave puedes marcar en su lugar la casilla de comodín, para que la concesión se aplique a todas las claves del tenant, incluidas las que se creen después. - El contexto de intercambio.
- Una política de restricción, o ninguna para dejar la concesión sin restricciones. La concesión fija la versión actual de la política.
- La revisión, que muestra el permiso de operación que conferirá la concesión. Selecciona Crear concesión.
- Para mover una concesión a otra versión de la política, abre Topología de intercambios, selecciona el intercambio de la concesión (selecciona su línea y, cuando la línea lleva varios intercambios, el intercambio en la lista), y selecciona Cambiar versión en la concesión. Solo una concesión vigente lo ofrece. Elige la Política de restricciones y la Versión, y luego selecciona Cambiar versión. El mismo control está en el paso de concesiones del editor de intercambios. La pantalla Concesiones de Capacidad no lo ofrece.
- Para revocar una concesión, selecciona Revocar en su fila. Vuelve a escribir el nombre del actor, o el identificador de la concesión cuando el actor no tiene nombre, completa ¿Por qué se revoca esta concesión? y selecciona Revocar.
Qué ves cuando funcionó
- Crear: "Concesión de capacidad creada". La concesión aparece en la lista y está vigente de inmediato, y el siguiente token del actor lleva el permiso de operación que confiere.
- Cambiar versión: desde su siguiente solicitud, la concesión se evalúa con la versión que elegiste. Los usos hechos mientras no tenía límite de uso no cuentan para un límite nuevo; entre versiones con límite, el recuento continúa.
- Revocar: "Concesión revocada". La concesión sale de la lista. El acceso no se detiene al instante: un token que el actor ya tiene conserva sus permisos durante hasta 900 segundos, y un servicio puede leer una concesión en caché durante hasta 300 segundos más.
Cada cambio se registra en la pista de auditoría; la pestaña Actividad de la concesión muestra su historial.
Si falla
| Qué ves | Causa | Qué hacer |
|---|---|---|
| "Esta concesión se superpondría con una concesión vigente del mismo actor. No se escribió nada." | Una concesión vigente del actor ya cubre algunas de estas operaciones y claves, en cualquier contexto; el asistente enlaza cada una | Revoca o reduce la concesión que estorba, o reduce la nueva |
| "Este actor pertenece a un caso de uso criptográfico interno y solo actúa para él, así que no puede recibir autoridad aquí. Elige un actor que no pertenezca a ningún caso de uso." | El actor pertenece a un caso de uso interno | Elige otro actor |
| "El contexto de intercambio no está activo, así que no acepta concesiones ni activaciones nuevas." | El contexto está suspendido o cerrado | Reanuda el contexto, o elige uno activo |
| La clave no puede llevar una capacidad, y se nombra la clave | Su estado, su propósito, su algoritmo o sus operaciones de clave la rechazan | Elige una clave que admita la operación, o quita la capacidad |
| La creación se rechaza por conferir autoridad | La concesión agrega un permiso de operación que el actor no tiene, y no puedes asignar roles a los actores | Pide ayuda a un administrador que pueda asignar roles a los actores |
| La creación se rechaza mientras actúas como otra persona | Estás en una sesión de acceso de soporte | Haz el cambio con tu propia identidad |
| La revocación se rechaza porque un intercambio es el propietario de la concesión | Un intercambio activo compone esta concesión | Revócala en el paso de concesiones del intercambio, o revoca el intercambio |
Sin la consola
| Superficie | Cómo |
|---|---|
| CLI de gestión de claves | ankasecure-km capability-grants create --actor-id <uuid> --context <uuid> --capability <capability> --asset-kid <kid> (--pair <sourceKid:targetKid> para una transformación, --constraint-policy-id <uuid>), o --body-file con la solicitud completa |
| CLI de gestión de claves | ankasecure-km capability-grants re-pin --id <uuid> --constraint-policy-version-id <uuid> |
| CLI de gestión de claves | ankasecure-km capability-grants revoke --id <uuid> --reason <text> |
| Admin SDK | CapabilityGrantOperations.create(CreateCapabilityGrantRequest), replacePolicyVersion(UUID, ReplaceCapabilityGrantPolicyVersionRequest) y revoke(UUID, RevokeCapabilityGrantRequest) |
| API | POST /api/v3/admin/tenants/{tenantId}/capability-grants (operación createCapabilityGrant) |
| API | PUT /api/v3/admin/tenants/{tenantId}/capability-grants/{grantId}/policy-version (operación replaceCapabilityGrantPolicyVersion) |
| API | POST /api/v3/admin/tenants/{tenantId}/capability-grants/{grantId}/revoke (operación revokeCapabilityGrant) |
Relacionado
- Concesiones de Capacidad: qué muestra la pantalla y cada decisión que tomas en ella.
- Topología de Intercambios: donde se cambia la versión de la política de una concesión.