Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
CloudTrail userIdentity elemento
AWS Identity and Access Management (IAM) proporciona diferentes tipos de identidades. El userIdentity
elemento contiene detalles sobre el tipo de IAM identidad que realizó la solicitud y las credenciales que se utilizaron. Si se utilizaron credenciales temporales, el elemento muestra cómo se obtuvieron las credenciales.
Contenido
Ejemplos
userIdentity
con credenciales de usuario de IAM
El siguiente ejemplo muestra el userIdentity
elemento de una solicitud simple realizada con las credenciales del IAM usuario nombradoAlice
.
"userIdentity": { "type": "IAMUser", "principalId": "AIDAJ45Q7YFFAREXAMPLE", "arn": "arn:aws:iam::123456789012:user/Alice", "accountId": "123456789012", "accessKeyId": "", "userName": "Alice" }
userIdentity
con credenciales de seguridad temporales
El siguiente ejemplo muestra un userIdentity
elemento para una solicitud realizada con credenciales de seguridad temporales obtenidas al asumir un IAM rol. El elemento contiene detalles adicionales sobre el rol que se asumió para obtener las credenciales.
"userIdentity": { "type": "AssumedRole", "principalId": "AROAIDPPEZS35WEXAMPLE:AssumedRoleSessionName", "arn": "arn:aws:sts::123456789012:assumed-role/RoleToBeAssumed/MySessionName", "accountId": "123456789012", "accessKeyId": "", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAIDPPEZS35WEXAMPLE", "arn": "arn:aws:iam::123456789012:role/RoleToBeAssumed", "accountId": "123456789012", "userName": "RoleToBeAssumed" }, "attributes": { "mfaAuthenticated": "false", "creationDate": "20131102T010628Z" ) } }
userIdentity
para una solicitud realizada en nombre de un usuario de IAM Identity Center
El siguiente ejemplo muestra un userIdentity
elemento de una solicitud realizada en nombre de un usuario de IAM Identity Center.
"userIdentity": { "type": "IdentityCenterUser", "accountId": "123456789012", "onBehalfOf": { "userId": "544894e8-80c1-707f-60e3-3ba6510dfac1", "identityStoreArn": "arn:aws:identitystore::123456789012:identitystore/d-9067642ac7" }, "credentialId": "EXAMPLEVHULjJdTUdPJfofVa1sufHDoj7aYcOYcxFVllWR_Whr1fEXAMPLE" }
Campos
Los siguientes campos pueden aparecer en un elemento userIdentity
.
type
-
El tipo de la identidad. Se admiten los siguientes valores:
-
Root
— La solicitud se realizó con sus Cuenta de AWS credenciales. Si el tipo deuserIdentity
esRoot
y configura un alias para su cuenta, el campouserName
contiene el alias de la cuenta. Para obtener más información, consulte Su ID de Cuenta de AWS y su alias. -
IAMUser
— La solicitud se realizó con las credenciales de un IAM usuario. -
AssumedRole
— La solicitud se realizó con credenciales de seguridad temporales que se obtuvieron con un rol al realizar una llamada al AWS Security Token Service (AWS STS)AssumeRole
API. Esto puede incluir funciones para Amazon EC2 y API acceso entre cuentas. -
Role
— La solicitud se realizó con una IAM identidad persistente que tiene permisos específicos. El emisor de las sesiones de rol es siempre el rol. Para obtener más información sobre las funciones, consulte los términos y conceptos de las funciones en la Guía del IAM usuario. -
FederatedUser
— La solicitud se realizó con credenciales de seguridad temporales obtenidas de una llamada al AWS STSGetFederationToken
API. ElsessionIssuer
elemento indica si API se llamó con credenciales de IAM usuario o root.Para obtener más información sobre las credenciales de seguridad temporales, consulte Credenciales de seguridad temporales en la Guía del IAM usuario.
-
Directory
: la solicitud se realizó a un servicio de directorio y el tipo es desconocido. Los servicios de directorio incluyen los siguientes: Amazon WorkDocs y Amazon QuickSight. -
AWSAccount
— La solicitud fue realizada por otro Cuenta de AWS -
AWSService
— La solicitud fue realizada por un hombre Cuenta de AWS que pertenece a un Servicio de AWS. Por ejemplo, AWS Elastic Beanstalk asume una IAM función en tu cuenta para llamar a otra persona Servicios de AWS en tu nombre. -
IdentityCenterUser
— La solicitud se realizó en nombre de un usuario del Centro de IAM Identidad. -
Unknown
— La solicitud se realizó con un tipo de identidad que no CloudTrail se puede determinar.
Opcional: Falso
AWSAccount
yAWSService
aparecentype
en tus registros cuando se puede acceder a varias cuentas mediante un IAM rol del que seas propietario.Ejemplo: acceso entre cuentas iniciado por otra cuenta de AWS .
-
Tienes un IAM rol en tu cuenta.
-
Otra AWS cuenta cambia a ese rol para asumir el rol de tu cuenta.
-
Como eres el propietario del IAM rol, recibes un registro en el que se muestra que la otra cuenta asumió el rol. El valor de
type
esAWSAccount
. Para ver un ejemplo de entrada de registro, consulte el AWS STS APIevento en el archivo de CloudTrail registro.
Ejemplo: acceso entre cuentas iniciado por un servicio AWS
-
Tienes un IAM rol en tu cuenta.
-
Una AWS cuenta propiedad de un AWS servicio asume esa función.
-
Como eres el propietario del IAM rol, recibes un registro que muestra que el AWS servicio ha asumido el rol. El valor de
type
esAWSService
.
-
userName
-
El nombre descriptivo de la identidad que realizó la llamada. El valor que aparece en
userName
se basa en el valor detype
. En la tabla siguiente se muestra la relación entretype
yuserName
:type
userName
Descripción Root
(sin alias definido)No presente Si no has configurado un alias para ti Cuenta de AWS, el userName
campo no aparecerá. Para obtener más información sobre los alias de las cuentas, consulta Tu Cuenta de AWS ID y su alias. Tenga en cuenta que el campouserName
no puede contenerRoot
porqueRoot
es un tipo de identidad, no un nombre de usuario.Root
(con alias definido)El alias de la cuenta Para obtener más información sobre los Cuenta de AWS alias, consulta Tu Cuenta de AWS ID y su alias. IAMUser
El nombre de usuario del IAM usuario AssumedRole
No presente Para el AssumedRole
tipo, puede buscar eluserName
camposessionContext
como parte del sessionIssuerelemento. Para ver una entrada de ejemplo, consulte Ejemplos.Role
Definido por el usuario Las secciones sessionContext
ysessionIssuer
contienen información sobre la identidad que emitió la sesión para el rol.FederatedUser
No presente Las secciones sessionContext
ysessionIssuer
contienen información sobre la identidad que emitió la sesión para el usuario federado.Directory
Puede estar presente Por ejemplo, el valor puede ser el alias de cuenta o la dirección de correo electrónico del ID de Cuenta de AWS asociado. AWSService
No presente AWSAccount
No presente IdentityCenterUser
No presente La onBehalfOf
sección contiene información sobre el ID de usuario y el almacén de IAM identidades del Centro de Identidad ARN para el que se realizó la llamada. Para obtener más información sobre IAM Identity Center, consulte la Guía del AWS IAM Identity Center usuario.Unknown
Puede estar presente Por ejemplo, el valor puede ser el alias de cuenta o la dirección de correo electrónico del ID de Cuenta de AWS asociado. nota
El campo
userName
contiene la cadenaHIDDEN_DUE_TO_SECURITY_REASONS
cuando el evento registrado es un error de inicio de sesión en la consola ocasionado al ingresar un nombre de usuario incorrecto. CloudTrail no graba el contenido en este caso porque el texto podría contener información confidencial, como en los ejemplos siguientes:-
Un usuario escribe por error una contraseña en el campo de nombre de usuario.
-
Un usuario hace clic en el enlace de la página de inicio de sesión de una AWS cuenta, pero después escribe el número de cuenta de otra.
-
Un usuario escribe por error el nombre de una cuenta de correo electrónico personal, un identificador de inicio de sesión en un banco u otro identificador privado.
Opcional: Verdadero
-
principalId
-
Un identificador único para la entidad que ha efectuado la llamada. En el caso de las solicitudes realizadas con credenciales de seguridad temporales, este valor incluye el nombre de la sesión que se transfiere a la
GetFederationToken
API llamadaAssumeRole
AssumeRoleWithWebIdentity
, o.Opcional: Verdadero
arn
-
El nombre del recurso de Amazon (ARN) del director que realizó la llamada. La última sección del arn contiene el usuario o el rol que realizó la llamada.
Opcional: Verdadero
accountId
-
La cuenta que posee la entidad que concedió permisos para la solicitud. Si la solicitud se realizó con credenciales de seguridad temporales, esta es la cuenta propietaria del IAM usuario o rol utilizado para obtener las credenciales.
Si la solicitud se realizó con un token de acceso autorizado a IAM Identity Center, esta es la cuenta propietaria de la instancia de IAM Identity Center.
Opcional: Verdadero
accessKeyId
-
El ID de clave de acceso de que se utilizó para firmar la solicitud. Si la solicitud se realizó con credenciales de seguridad temporales, este es el ID de clave de acceso de las credenciales temporales. Por razones de seguridad, puede ser que el
accessKeyId
no esté presente, o puede mostrarse como una cadena vacía.Opcional: Verdadero
sessionContext
-
Si la solicitud se hizo con credenciales de seguridad temporales,
sessionContext
proporciona información sobre la sesión que se creó para esas credenciales. Al llamar a una sesión API que devuelva credenciales temporales, se crea una sesión. Los usuarios también crean sesiones cuando trabajan en la consola y realizan solicitudes APIs que incluyen la autenticación multifactorial. Los siguientes atributos pueden aparecer ensessionContext
:-
sessionIssuer
— Si un usuario realiza una solicitud con credenciales de seguridad temporales,sessionIssuer
proporciona información sobre cómo obtuvo las credenciales el usuario. Por ejemplo, si obtuvo las credenciales de seguridad temporales asumiendo un rol, este elemento proporciona información acerca del rol asumido. Si obtuvo credenciales con credenciales raíz o de IAM usuario para llamar AWS STSGetFederationToken
, el elemento proporciona información sobre la cuenta o el IAM usuario raíz. Este elemento tiene los siguientes atributos:-
type
: el origen de las credenciales de seguridad temporales, comoRoot
,IAMUser
oRole
. -
userName
: el nombre descriptivo del usuario o el rol que emitió la sesión. El valor que aparece depende del valortype
de la identidadsessionIssuer
. En la tabla siguiente se muestra la relación entresessionIssuer type
yuserName
:sessionIssuer
typeuserName
Descripción Root
(sin alias definido)No presente Si no ha creado un alias para su cuenta, no aparece el campo userName
. Para obtener más información sobre los Cuenta de AWS alias, consulte Su Cuenta de AWS ID y su alias. Tenga en cuenta que el campouserName
no puede contenerRoot
porqueRoot
es un tipo de identidad, no un nombre de usuario.Root
(con alias definido)El alias de la cuenta Para obtener más información sobre los Cuenta de AWS alias, consulta Tu ID de AWS cuenta y su alias. IAMUser
El nombre de usuario del IAM usuario Esto también se aplica cuando un usuario federado utiliza una sesión emitida por IAMUser
.Role
El nombre del rol Un rol que asume un IAM usuario o un usuario federado de identidad web en una sesión de rol. Servicio de AWS -
principalId
: el ID interno de la entidad que se utilizó para obtener las credenciales. -
arn
— El ARN de la fuente (cuenta, IAM usuario o rol) que se utilizó para obtener las credenciales de seguridad temporales. -
accountId
: la cuenta que posee la entidad que se utilizó para obtener las credenciales.
-
-
webIdFederationData
— Si la solicitud se realizó con credenciales de seguridad temporales obtenidas por la federación de identidades web,webIdFederationData
muestra información sobre el proveedor de identidad.Este elemento tiene los siguientes atributos:
-
federatedProvider
: el nombre principal del proveedor de identidad (por ejemplo,www.amazon.com
para Login with Amazon oaccounts.google.com
para Google). -
attributes
: el ID de aplicación y el ID de usuario tal como los indicó el proveedor (por ejemplo,www.amazon.com:app_id
ywww.amazon.com:user_id
para Login with Amazon).
nota
La omisión de este campo o la presencia de este campo con un valor vacío significa que no hay información sobre el proveedor de identidad.
-
-
creationDate
: la fecha y la hora en que se emitieron las credenciales de seguridad temporales. Representado en notación básica ISO 8601. -
mfaAuthenticated
— El valor estrue
si el usuario raíz o el IAM usuario que utilizó sus credenciales para la solicitud también se autenticó con un MFA dispositivo; de lo contrario,.false
-
sourceIdentity
: consulte AWS STS identidad de origen en este tema. ElsourceIdentity
campo aparece en los eventos en los que los usuarios asumen un IAM rol para realizar una acción.sourceIdentity
identifica la identidad del usuario original que realiza la solicitud, ya sea que la identidad del usuario sea un IAM usuario, un IAM rol, un usuario autenticado mediante una federación SAML basada o un usuario autenticado mediante una federación de identidades web compatible con OpenID Connect (OIDC). Para obtener más información sobre la configuración AWS STS para recopilar la información de identidad de origen, consulte Supervisar y controlar las acciones que se toman con los roles asumidos en la Guía del usuario. IAM -
ec2RoleDelivery
— El valor corresponde a1.0
si las credenciales las proporcionó Amazon EC2 Instance Metadata Service versión 1 (IMDSv1). El valor corresponde a2.0
si las credenciales se proporcionaron mediante el nuevo IMDS esquema.AWS las credenciales proporcionadas por Amazon EC2 Instance Metadata Service (IMDS) incluyen una clave de RoleDelivery IAM contexto ec2:. Esta clave de contexto facilita la imposición del uso del nuevo esquema de resource-by-resource forma individual, ya que utiliza la clave de contexto como condición en IAM las políticas, las políticas de recursos o las políticas de control de AWS Organizations servicios. service-by-service Para obtener más información, consulta los metadatos de las instancias y los datos de usuario en la Guía del EC2 usuario de Amazon.
Opcional: Verdadero
-
invokedBy
-
El nombre de la Servicio de AWS persona que realizó la solicitud, cuando la solicitud la realiza una empresa Servicio de AWS como Amazon EC2 Auto Scaling o AWS Elastic Beanstalk. Este campo solo está presente cuando una solicitud la realiza un Servicio de AWS. Esto incluye las solicitudes realizadas por los servicios que utilizan sesiones de acceso directo (FAS), Servicio de AWS los directores, las funciones vinculadas al servicio o las funciones de servicio utilizadas por un. Servicio de AWS
Opcional: Verdadero
onBehalfOf
-
Si la solicitud la realizó una persona que llamó a IAM Identity Center,
onBehalfOf
proporciona información sobre el ID de usuario del IAM Identity Center y el almacén de identidades ARN para los que se realizó la llamada. Este elemento tiene los siguientes atributos:-
userId
— El ID del usuario de IAM Identity Center en nombre del que se realizó la llamada. -
identityStoreArn
— El ARN del almacén de IAM identidades del Centro de Identidad en el que se realizó la llamada.
Opcional: Verdadero
-
credentialId
-
El ID de la credencial de la solicitud. Esto solo se establece cuando la persona que llama usa un token de portador, como un token de acceso autorizado del IAM Identity Center.
Opcional: Verdadero
Valores para « AWS STS APIscon identidad federada» SAML y «web»
AWS CloudTrail admite las API llamadas logging AWS Security Token Service (AWS STS) realizadas con el lenguaje de marcado de aserciones de seguridad (SAML) y la federación de identidades web. Cuando un usuario hace una llamada a AssumeRoleWithSAML
and AssumeRoleWithWebIdentity
APIs, CloudTrail graba la llamada y envía el evento a tu bucket de Amazon S3.
El userIdentity
elemento correspondiente APIs contiene los siguientes valores.
type
-
El tipo de identidad.
-
SAMLUser
— La solicitud se realizó con SAML firmeza. -
WebIdentityUser
: la solicitud la realizó un proveedor de federación de identidades web.
-
principalId
-
Un identificador único para la entidad que ha efectuado la llamada.
-
Para
SAMLUser
, este identificador es una combinación de las clavessaml:namequalifier
ysaml:sub
. -
Para
WebIdentityUser
, es una combinación del emisor, el ID de aplicación y el ID de usuario.
-
userName
-
El nombre de la identidad que realizó la llamada.
-
Para
SAMLUser
, esta es la clave desaml:sub
. -
Para
WebIdentityUser
, este es el ID de usuario.
-
identityProvider
-
El nombre principal del proveedor de identidad externo. Este campo aparece únicamente para los tipos
SAMLUser
oWebIdentityUser
.-
Pues
SAMLUser
, esta es lasaml:namequalifier
clave de la SAML afirmación. -
Para
WebIdentityUser
, es el nombre de emisor del proveedor de federación de identidades web. Puede ser un proveedor que haya configurado, como los siguientes:-
cognito-identity.amazon.com
para Amazon Cognito -
www.amazon.com
para Login with Amazon -
accounts.google.com
para Google -
graph.facebook.com
para Facebook
-
-
A continuación se incluye un elemento userIdentity
de ejemplo para la acción AssumeRoleWithWebIdentity
.
"userIdentity": { "type": "WebIdentityUser", "principalId": "accounts.google.com:
application-id
.apps.googleusercontent.com:user-id
", "userName": "user-id
", "identityProvider": "accounts.google.com" }
Para ver un ejemplo de cómo se muestra el userIdentity
elemento SAMLUser
y cómo se WebIdentityUser
escribe, consulte Registrar IAM y AWS STS API llamar con AWS CloudTrail.
AWS STS identidad de origen
Un IAM administrador puede AWS Security Token Service configurarlo para exigir que los usuarios especifiquen su identidad cuando usen credenciales temporales para asumir funciones. El sourceIdentity
campo aparece en los eventos en los que los usuarios asumen un IAM rol o realizan cualquier acción con el rol asumido.
El sourceIdentity
campo identifica la identidad del usuario original que realiza la solicitud, ya sea que la identidad del usuario sea un IAM usuario, un IAM rol, un usuario autenticado mediante una federación SAML basada o un usuario autenticado mediante una federación de identidades web compatible con OpenID Connect (OIDC). Una vez que el IAM administrador lo configura AWS STS, CloudTrail registra la sourceIdentity
información en los siguientes eventos y ubicaciones dentro del registro de eventos:
-
Las AWS STS
AssumeRole
AssumeRoleWithSAML
, oAssumeRoleWithWebIdentity
las llamadas que realiza la identidad de un usuario cuando asume un rol.sourceIdentity
se encuentra en elrequestParameters
bloque de AWS STS llamadas. -
Las AWS STS
AssumeRole
AssumeRoleWithSAML
, o lasAssumeRoleWithWebIdentity
llamadas que realiza la identidad de un usuario si utiliza un rol para asumir otro rol, lo que se conoce como encadenamiento de roles.sourceIdentity
se encuentra en elrequestParameters
bloque de AWS STS llamadas. -
El AWS servicio realiza API las llamadas que realiza la identidad del usuario al asumir un rol y utilizar las credenciales temporales asignadas por AWS STS. En API los eventos de servicio,
sourceIdentity
se encuentra en elsessionContext
bloque. Por ejemplo, si una identidad de usuario crea un nuevo bucket de S3, se producesourceIdentity
en el bloquesessionContext
del eventoCreateBucket
.
Para obtener más información sobre cómo configurar AWS STS la recopilación de la información de identidad de origen, consulte Supervisar y controlar las acciones que se toman con las funciones asumidas en la Guía del IAM usuario. Para obtener más información sobre AWS STS los eventos que se registran CloudTrail, consulte Registros IAM y AWS STS API llamadas AWS CloudTrail en la Guía del IAM usuario.
Los siguientes son fragmentos de ejemplo de eventos que muestran el campo sourceIdentity
.
Ejemplo de sección de requestParameters
En el siguiente fragmento de eventos de ejemplo, un usuario realiza una AWS STS AssumeRole
solicitud y establece una identidad de origen, representada aquí por.
El usuario asume un rol representado por el rol. ARN source-identity-value-set
arn:aws:iam::123456789012:role/Assumed_Role
El campo sourceIdentity
está en el bloque requestParameters
del evento.
"eventVersion": "1.05", "userIdentity": { "type": "AWSAccount", "principalId": "AIDAJ45Q7YFFAREXAMPLE", "accountId": "123456789012" }, "eventTime": "2020-04-02T18:20:53Z", "eventSource": "sts.amazonaws.com", "eventName": "AssumeRole", "awsRegion": "us-east-1", "sourceIPAddress": "203.0.113.64", "userAgent": "aws-cli/1.16.96 Python/3.6.0 Windows/10 botocore/1.12.86", "requestParameters": { "roleArn": "arn:aws:iam::123456789012:role/Assumed_Role", "roleSessionName": "Test1", "sourceIdentity": "
source-identity-value-set
", },
Ejemplo de sección de responseElements
En el siguiente fragmento de evento de ejemplo, un usuario realiza una AWS STS AssumeRole
solicitud para asumir un rol denominado Developer_Role
y establece una identidad de origen. Admin
El usuario asume un rol representado por el rol. ARN arn:aws:iam::111122223333:role/Developer_Role
El campo sourceIdentity
se muestra en los bloques requestParameters
y responseElements
del evento. Las credenciales temporales utilizadas para asumir el rol, la cadena de símbolos de sesión y el identificador del rol asumido, el nombre de la sesión y la sesión se ARN muestran en el responseElements
bloque, junto con la identidad de origen.
"requestParameters": { "roleArn": "arn:aws:iam::111122223333:role/Developer_Role", "roleSessionName": "Session_Name", "sourceIdentity": "Admin" }, "responseElements": { "credentials": { "accessKeyId": "ASIAIOSFODNN7EXAMPLE", "expiration": "Jan 22, 2021 12:46:28 AM", "sessionToken": "XXYYaz... EXAMPLE_SESSION_TOKEN XXyYaZAz" }, "assumedRoleUser": { "assumedRoleId": "AROACKCEVSQ6C2EXAMPLE:Session_Name", "arn": "arn:aws:sts::111122223333:assumed-role/Developer_Role/Session_Name" }, "sourceIdentity": "Admin" } ...
Ejemplo de sección de sessionContext
En el siguiente fragmento de evento de ejemplo, un usuario asume un rol denominado DevRole
para llamar a un AWS servicio. API El usuario establece una identidad de origen, representada aquí por source-identity-value-set
. El sourceIdentity
campo está en el sessionContext
bloque, dentro del userIdentity
bloque del evento.
{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "AROAJ45Q7YFFAREXAMPLE: Dev1", "arn": "arn: aws: sts: : 123456789012: assumed-role/DevRole/Dev1", "accountId": "123456789012", "accessKeyId": "ASIAIOSFODNN7EXAMPLE", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAJ45Q7YFFAREXAMPLE", "arn": "arn: aws: iam: : 123456789012: role/DevRole", "accountId": "123456789012", "userName": "DevRole" }, "webIdFederationData": {}, "attributes": { "mfaAuthenticated": "false", "creationDate": "2021-02-21T23: 46: 28Z" }, "sourceIdentity": "
source-identity-value-set
" } } }