Skip to main content
POST
Asumir rol con identidad web
Requiere sin acción de IAM. El acceso se decide por las propias reglas del punto final en lugar de por una política. Consulte la descripción anterior.

Cuerpo

application/json

El intercambio que envía un llamador federado. No lleva firma — el token es la credencial — por lo que cada campo se lee desde el cuerpo y nada se infiere del contexto de la solicitud.

web_identity_token
string
requerido

El token de identidad a intercambiar, como un JWT firmado. Se verifica antes de que se lea cualquier rol: la firma debe encadenar a una clave que el proveedor de confianza publica, la audiencia debe ser la que esta plataforma fue configurada para aceptar, y exp debe estar en el futuro.

Ejemplo:

"eyJhbGciOiJSUzI1NiIsImtpZCI6..."

role
string
requerido

UUID del rol de la cuenta, nombre inmutable en la cuenta seleccionada, o crn:iam:::función/. AssumeRole puede usar un CRN calificado para dirigirse a otra cuenta de la misma organización, y la sesión resultante se vincula a la cuenta de rol de destino.

Ejemplo:

"crn:iam::production:role/reports"

account
string
requerido

UUID de la cuenta, identificador inmutable o CRN de una cuenta de espacio de trabajo (crn:workspace:::account/La cuenta establece la organización propietaria para la federación y debe coincidir con la cuenta de rol de destino.

Ejemplo:

"crn:workspace:::account/9f8b1c2d-3e4f-4a5b-8c9d-0e1f2a3b4c5d"

session_name
string

Una etiqueta registrada en la sesión y en el seguimiento de auditoría. Por defecto, se establece en la afirmación sub del token, por lo que una sesión sin nombre todavía registra de qué identidad proviene.

Ejemplo:

"reports-exporter"

duration_seconds
integer
predeterminado:3600

Duración de validez de la credencial (15 min a 12 horas). Un valor por encima de la propia max_session_duration del rol es rechazado en lugar de ser sujetado.

Rango requerido: 900 <= x <= 43200
Ejemplo:

3600

Respuesta

Función asumida con éxito

Las credenciales de una sesión de rol, en ambas formas que se pueden presentar.

access_token es un token portador para esta API — envíelo como Authorization: Bearer <token>. Los otros cuatro campos son credenciales de AWS SigV4 para el punto final de almacenamiento de objetos compatible con S3, que no dice nada más.

Ambos provienen de la misma sesión y comparten su vencimiento, por lo que revocar la sesión detiene a ambos a la vez. Utilice cualquiera que sea el punto final que está llamando; no hay necesidad de elegir uno en el momento de la solicitud.

access_token
string

Token portador para la API de Basaltic. Presencia en cada sesión de rol.

Ejemplo:

"eyJhbGciOiJFUzI1NiIsInR5cCI6ImF0K2p3dCIsImtpZCI6Ii4uLiJ9..."

token_type
string

Siempre Bearer cuando access_token está presente.

Ejemplo:

"Bearer"

expires_in
integer

Segundos hasta que access_token expira.

Ejemplo:

3600

access_key_id
string

Id de clave de acceso SigV4, para el punto final S3.

Ejemplo:

"AKIA..."

secret_access_key
string

Secreto SigV4, para el punto final S3.

Ejemplo:

"wJalrXUtnFEMI..."

session_token
string

Token de sesión SigV4, para el punto final S3. Enviar como X-Amz-Security-Token e incluirlo en SignedHeaders.

Ejemplo:

"FwoGZXIvYXdzE..."

expiration
string<date-time>

Cuando la sesión —y por lo tanto ambos formularios de credenciales— caduca.

Ejemplo:

"2026-01-15T09:30:00Z"

account_id
string<uuid>

UUID de la cuenta propietaria del rol de destino.

account_handle
string

Identificador de cuenta de propietario del rol de destino.

role_id
string<uuid>

UUID inmutable del rol asumido.