Skip to content

Permitir que las cargas de trabajo inicien sesión con una identidad de nube o de CI

Permite que una carga de trabajo inicie sesión con un token que ya le emite su propio proveedor de identidad, como una cuenta de servicio de Kubernetes o la identidad de una canalización de CI, para que no se guarde ninguna clave ni ningún secreto para ella. Declaras el proveedor como emisor de confianza del tenant y luego vinculas un sujeto exacto de ese emisor a la carga de trabajo.

Quién puede hacerlo

Un administrador del tenant. Un gestor de claves del tenant también puede declarar, cambiar y probar los emisores de confianza del tenant, pero no puede vincular un sujeto a una carga de trabajo. Un superadministrador de plataforma puede hacer lo mismo para un tenant: en ese caso, la consola declara el emisor en nombre del tenant, desde la plataforma. En un despliegue SaaS se rechaza que un administrador de la plataforma vincule un sujeto a una carga de trabajo.

Los controles de emisores en Emisores de confianza requieren el permiso para cambiar y para probar los emisores de confianza del tenant. Vincular sujeto federado y Desvincular requieren el permiso para gestionar las credenciales de las cargas de trabajo, y elegir un emisor requiere el permiso para leer la confianza de identidad de cargas de trabajo.

Antes de empezar

  • La edición del tenant incluye la identidad de cargas de trabajo. Cuando no la incluye, la consola lo indica: "Declarar tus propios emisores de confianza requiere la edición {requiredEdition}; la edición de este tenant es {effectiveEdition}." Quitar un emisor del conjunto de confianza y eliminarlo siguen disponibles.
  • En un despliegue que operas tú mismo, el operador de la plataforma debe haber delegado esta integración al tenant.
  • La carga de trabajo existe. Consulta Crear una carga de trabajo y su primera credencial.
  • Conoces la URL del emisor exactamente como el proveedor la escribe en el claim iss del token, y el sub exacto que llevan los tokens de la carga de trabajo.

Pasos

  1. Declara el emisor:
    1. Abre Configuración desde la barra lateral del tenant y luego la pestaña Integraciones.
    2. En la fila Emisores de confianza, selecciona Gestionar y luego Declarar un emisor.
    3. Elige el Proveedor y escribe la URL del emisor, una Etiqueta opcional y la Vida máxima del token como una duración ISO-8601, por ejemplo PT1H.
    4. De forma opcional, selecciona Comprobar antes de guardar para ver si el despliegue aceptaría la declaración y la forma en que guarda la URL del emisor.
    5. Selecciona Declarar un emisor.
  2. Copia la Audiencia derivada del emisor y establécela, exactamente como se muestra, como la audiencia de la aplicación de la carga de trabajo en tu proveedor de identidad.
  3. Selecciona Agregar al conjunto de confianza. Un emisor declarado no autentica a nadie hasta que está en el conjunto de confianza.
  4. De forma opcional, selecciona Probar para comprobar que el despliegue puede llegar al emisor.
  5. Vincula la carga de trabajo:
    1. Abre Cargas de trabajo administrativas, selecciona el nombre de la carga de trabajo y abre la pestaña Identidades federadas.
    2. Selecciona Vincular sujeto federado.
    3. Elige el Emisor de confianza y escribe el Sujeto exactamente como lo lleva el claim sub del token, por ejemplo system:serviceaccount:payroll:key-rotator.
    4. Selecciona Vincular.

Para cambiar un emisor más adelante, selecciona Editar y luego Guardar cambios. Para que deje de aceptar tokens conservando su declaración, selecciona Quitar del conjunto de confianza. Para retirarlo, selecciona Eliminar: todas las cargas de trabajo del tenant que inician sesión mediante el emisor dejan de autenticarse, y la eliminación se rechaza mientras una vinculación de un actor criptográfico nombre el emisor. Las vinculaciones de cargas de trabajo no la bloquean. Para que un sujeto deje de iniciar sesión, selecciona Desvincular en su fila.

Qué ves cuando funcionó

La consola confirma "Emisor de confianza declarado.", "El emisor está en el conjunto de confianza." y "Sujeto federado vinculado.". La vinculación aparece en la pestaña Identidades federadas de la carga de trabajo. La carga de trabajo inicia sesión con un token que ese emisor emite para ese sujeto, y recibe los ámbitos que tiene asignados.

Después de Desvincular, los tokens que el sujeto ya obtuvo siguen siendo válidos hasta que vencen, en un máximo de cinco minutos; suspende la carga de trabajo cuando deban rechazarse de inmediato.

Si falla

Qué ves Causa Qué hacer
"Aún no hay emisores de confianza que se puedan vincular aquí. Declara uno primero en la configuración de identidad de cargas de trabajo." El tenant no tiene ningún emisor con el que pueda vincular Declara un emisor y agrégalo al conjunto de confianza
"Este despliegue rechazaría la declaración tal como está escrita." La declaración incumple una regla de admisión; el detalle indica qué cambiar Corrige el campo que indica el detalle
"El servidor rechazó esta declaración", indicando que el emisor ya está declarado aquí o ya es de confianza en todo el despliegue El tenant, o el despliegue, ya declara ese emisor Edita la declaración existente, o vincula con el emisor del despliegue
Este emisor y este sujeto ya están vinculados a una carga de trabajo administrativa o a un actor criptográfico de este tenant; quita primero esa vinculación ("This issuer and subject are already bound to an administrative workload or a cryptographic actor of this tenant. Remove that binding first.") Ese emisor y ese sujeto ya inician sesión como otra carga de trabajo o un actor criptográfico Usa la entidad existente, o desvincula primero el sujeto allí
"Ese cambio no se aplicó", con un detalle que indica cuántas vinculaciones de actores todavía tiene el emisor Vinculaciones de actores criptográficos todavía nombran el emisor Quita primero esas vinculaciones, o selecciona Quitar del conjunto de confianza, que las conserva
Se rechaza el inicio de sesión de la carga de trabajo por no estar autenticada aunque la vinculación existe La audiencia configurada en el proveedor no coincide con la Audiencia derivada Vuelve a copiar la audiencia derivada, carácter por carácter

Sin la consola

Superficie Cómo
API POST /api/v3/admin/tenants/{tenantId}/workload-identity/issuers (operación createTenantTrustedIssuer); PUT y DELETE sobre .../issuers/{issuerId} (operaciones replaceTenantTrustedIssuer, deleteTenantTrustedIssuer)
API POST .../issuers/{issuerId}/enable y .../disable (operaciones enableTenantTrustedIssuer, disableTenantTrustedIssuer); POST .../issuers/validate y .../issuers/{issuerId}/test (operaciones validateTenantTrustedIssuer, testTenantTrustedIssuer)
API POST /api/v3/admin/tenants/{tenantId}/workloads/{workloadId}/issuer-bindings (operación createTenantWorkloadIssuerBinding); DELETE .../issuer-bindings/{bindingId} (operación deleteTenantWorkloadIssuerBinding)

Relacionado