Skip to main content
POST
Asumir rol
Requiere la acción de IAM iam:AssumeRole. Consulte permisos de IAM para obtener la lista completa, lo que cubre cada una y un ejemplo de directiva.

Autorizaciones

Authorization
string
header
requerido

Un token bearer de OAuth 2.0, enviado como Authorization: Bearer <token>. Esta es la forma recomendada de autenticación.

Obtén el token intercambiando el par de claves de acceso de una cuenta de servicio en POST /v1/oauth/token con grant_type=client_credentials. Es el flujo estándar de credenciales de cliente; las bibliotecas compatibles con OAuth pueden obtener y renovar el token por ti.

Los tokens duran una hora por defecto. El mismo par de claves de acceso también sirve como credencial AWS SigV4 para el endpoint de objetos compatible con S3, que solo acepta ese método de autenticación.

Cuerpo

application/json
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"

duration_seconds
integer
predeterminado:3600

Duración de validez de la credencial (15 min a 12 horas)

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

3600

policy
object

Una política en línea que abarca las credenciales que se están creando. No otorga nada por sí mismo: cada solicitud hecha con las credenciales resultantes debe ser permitida por las políticas efectivas del rol asumido y por este documento, por lo que solo puede restringir los permisos del rol asumido.

El documento es validado en el camino y almacenado con la sesión — un documento inválido falla la llamada con INVALID_INPUT en lugar de ser ignorado. Las declaraciones toman la misma forma que en una política administrada, pero no llevan conditions; una política de sesión se limita a acciones y recursos solamente.

Ejemplo:

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.