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.
Cómo AWS X-Ray funciona con IAM
Antes de administrar el IAM acceso a X-Ray, debe comprender qué IAM funciones están disponibles para su uso con X-Ray. Para obtener una visión general de cómo Servicios de AWS funcionan X-Ray y otrosIAM, consulte Servicios de AWS That Work with IAM en la Guía del IAM usuario.
Puedes usar AWS Identity and Access Management (IAM) para conceder permisos de X-Ray a los usuarios y los recursos informáticos de tu cuenta. IAMcontrola el acceso al servicio X-Ray a API nivel para aplicar los permisos de manera uniforme, independientemente del cliente (consola AWS SDK, AWS CLI) que empleen sus usuarios.
Para usar la consola X-Ray para ver mapas y segmentos de rastreo, solo necesita permisos de lectura. Para habilitar el acceso a la consola, AWSXrayReadOnlyAccess
añada la política gestionada a su IAM usuario.
Para el desarrollo y las pruebas locales, cree un IAM rol con permisos de lectura y escritura. Asuma el rol y almacene las credenciales temporales para el rol. Puede utilizar estas credenciales con el daemon X-Ray AWS CLI, el y el AWS SDK. Para obtener más información, consulte Uso de credenciales de seguridad temporales con AWS CLI.
Para implementar su aplicación instrumentada AWS, cree un IAM rol con permisos de escritura y asígnelo a los recursos que ejecutan su aplicación. AWSXRayDaemonWriteAccess
incluye permisos para cargar trazas y algunos permisos de lectura para permitir el uso de reglas de muestreo.
Las políticas de lectura y escritura no incluyen permiso para configurar la configuración de clave de cifrado y reglas de muestreo. Se utiliza AWSXrayFullAccess
para acceder a estos ajustes o para añadir la configuración APIs en una política personalizada. Para el cifrado y el descifrado con una clave administrada por el cliente que cree, también necesita permiso para utilizar la clave.
Temas
Políticas de X-Ray basadas en identidades
Con las políticas IAM basadas en la identidad, puede especificar las acciones y los recursos permitidos o denegados, así como las condiciones en las que se permiten o deniegan las acciones. X-Ray admite acciones, claves de condición y recursos específicos. Para obtener más información sobre todos los elementos que se utilizan en una JSON política, consulte la Referencia sobre los elementos IAM JSON de la política en la Guía del IAMusuario.
Acciones
Los administradores pueden usar AWS JSON las políticas para especificar quién tiene acceso a qué. Es decir, qué entidad principal puede realizar acciones en qué recursos y en qué condiciones.
El Action
elemento de una JSON política describe las acciones que puede utilizar para permitir o denegar el acceso en una política. Las acciones de política suelen tener el mismo nombre que la AWS API operación asociada. Hay algunas excepciones, como las acciones que solo permiten permisos y que no tienen una operación coincidente. API También hay algunas operaciones que requieren varias acciones en una política. Estas acciones adicionales se denominan acciones dependientes.
Incluya acciones en una política para conceder permisos y así llevar a cabo la operación asociada.
Las acciones de políticas de X-Ray utilizan el siguiente prefijo antes de la acción: xray:
. Por ejemplo, para conceder permiso a alguien para recuperar los detalles de los recursos del grupo con la GetGroup
API operación X-Ray, debes incluir la xray:GetGroup
acción en su política. Las instrucciones de la política deben incluir un elemento Action
o un elemento NotAction
. X-Ray define su propio conjunto de acciones que describen las tareas que se pueden realizar con este servicio.
Para especificar varias acciones en una única instrucción, sepárelas con comas del siguiente modo:
"Action": [ "xray:action1", "xray:action2"
Puede utilizar caracteres comodín para especificar varias acciones (*). Por ejemplo, para especificar todas las acciones que comiencen con la palabra Get
, incluya la siguiente acción:
"Action": "xray:Get*"
Para ver una lista de las acciones de X-Ray, consulte Acciones definidas por AWS X-Ray en la Guía del IAM usuario.
Recursos
Los administradores pueden usar AWS JSON políticas para especificar quién tiene acceso a qué. Es decir, qué entidad principal puede realizar acciones en qué recursos y en qué condiciones.
El elemento Resource
JSON de política especifica el objeto o los objetos a los que se aplica la acción. Las instrucciones deben contener un elemento Resource
o NotResource
. Como práctica recomendada, especifique un recurso mediante su nombre de recurso de Amazon (ARN). Puede hacerlo para acciones que admitan un tipo de recurso específico, conocido como permisos de nivel de recurso.
Para las acciones que no admiten permisos de nivel de recurso, como las operaciones de descripción, utilice un carácter comodín (*) para indicar que la instrucción se aplica a todos los recursos.
"Resource": "*"
Puede controlar el acceso a los recursos mediante una IAM política. Para las acciones que admiten permisos a nivel de recurso, utiliza un nombre de recurso de Amazon (ARN) para identificar el recurso al que se aplica la política.
Todas las acciones de X-Ray se pueden usar en una IAM política para conceder o denegar a los usuarios el permiso para usar esa acción. Sin embargo, no todas las acciones de X-Ray admiten permisos de nivel de recursos, que le permiten especificar los recursos en los que se puede realizar una acción.
Para las acciones que no admiten permisos de nivel de recursos, debe utilizar "*
" como recurso.
Las siguientes acciones de X-Ray admiten permisos de nivel de recursos:
-
CreateGroup
-
GetGroup
-
UpdateGroup
-
DeleteGroup
-
CreateSamplingRule
-
UpdateSamplingRule
-
DeleteSamplingRule
A continuación, se muestra un ejemplo de una política de permisos basada en identidad para una acción CreateGroup
: En el ejemplo se muestra el uso de un nombre ARN relacionado local-users
con el grupo con un identificador único como comodín. El ID único se genera cuando se crea el grupo y, por lo tanto, no puede predecirse en la política con antelación. Si utilizaGetGroup
, o UpdateGroup
DeleteGroup
, puede definirlo como un comodín o el identificador exactoARN, incluido el identificador.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "xray:CreateGroup" ], "Resource": [ "arn:aws:xray:eu-west-1:123456789012:group/local-users/*" ] } ] }
A continuación, se muestra un ejemplo de una política de permisos basada en identidad para una acción CreateSamplingRule
:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "xray:CreateSamplingRule" ], "Resource": [ "arn:aws:xray:eu-west-1:123456789012:sampling-rule/base-scorekeep" ] } ] }
nota
La regla ARN de muestreo se define por su nombre. A diferencia del grupoARNs, las reglas de muestreo no tienen un identificador generado de forma única.
Para ver una lista de los tipos de recursos de X-Ray y sus tiposARNs, consulte los recursos definidos por AWS X-Ray en la Guía del IAM usuario. Para saber con qué acciones puede especificar cada recurso, consulte Acciones definidas por AWS X-Ray. ARN
Claves de condición
X-Ray no proporciona ninguna clave de condición específica del servicio, pero sí admite el uso de algunas claves de condición globales. Para ver todas las claves de condición AWS globales, consulte las claves de contexto de condición AWS globales en la Guía del IAM usuario.
Ejemplos
Para ver ejemplos de políticas basadas en identidad de X-Ray, consulte AWS X-Ray ejemplos de políticas basadas en la identidad.
Políticas de X-Ray basadas en recursos
X-Ray apoya políticas basadas en recursos para la Servicio de AWS integración actual y futura, como Amazon SNS Active Tracing. Las políticas basadas en recursos de X-Ray pueden actualizarse por otras personas AWS Management Console o a través del AWS SDK o. CLI Por ejemplo, la SNS consola de Amazon intenta configurar automáticamente una política basada en recursos para enviar trazas a X-Ray. En el siguiente documento de política se proporciona un ejemplo de configuración manual de una política basada en recursos de X-Ray.
ejemplo Ejemplo de política basada en recursos de X-Ray para el rastreo activo de Amazon SNS
En este ejemplo de documento de política se especifican los permisos que Amazon SNS necesita para enviar datos de rastreo a X-Ray:
{ Version: "2012-10-17", Statement: [ { Sid: "SNSAccess", Effect: Allow, Principal: { Service: "sns.amazonaws.com", }, Action: [ "xray:PutTraceSegments", "xray:GetSamplingRules", "xray:GetSamplingTargets" ], Resource: "*", Condition: { StringEquals: { "aws:SourceAccount": "
account-id
" }, StringLike: { "aws:SourceArn": "arn:partition
:sns:region
:account-id
:topic-name
" } } } ] }
CLIUtilízala para crear una política basada en recursos que otorgue a Amazon SNS permisos para enviar datos de rastreo a X-Ray:
aws xray put-resource-policy --policy-name MyResourcePolicy --policy-document '{ "Version": "2012-10-17", "Statement": [ { "Sid": "SNSAccess", "Effect": "Allow", "Principal": { "Service": "sns.amazonaws.com" }, "Action": [ "xray:PutTraceSegments", "xray:GetSamplingRules", "xray:GetSamplingTargets" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "
account-id
" }, "StringLike": { "aws:SourceArn": "arn:partition
:sns:region
:account-id
:topic-name
" } } } ] }'
Para usar estos ejemplos, sustituya
,
Partición
, región
, y account-id
con tu AWS partición, región, ID de cuenta y nombre de SNS tema de Amazon específicos. Para dar permiso a todos los SNS temas de Amazon para enviar datos de rastreo a X-Ray, sustituye el nombre del tema pornombre del tema
*
.
Autorización basada en etiquetas de X-Ray
Puede adjuntar etiquetas a los grupos o las reglas de muestreo de X-Ray, o pasar las etiquetas en una solicitud a X-Ray. Para controlar el acceso en función de etiquetas, debe proporcionar información de las etiquetas en el elemento de condición de una política utilizando las claves de condición xray:ResourceTag/
, key-name
aws:RequestTag/
o key-name
aws:TagKeys
. Para obtener más información acerca del etiquetado de recursos de X-Ray, consulte Etiquetado de reglas de muestreo y grupos de X-Ray.
Para consultar un ejemplo de política basada en la identidad para limitar el acceso a un recurso en función de las etiquetas de ese recurso, consulte Gestión del acceso a los grupos de rayos X y a las reglas de muestreo en función de las etiquetas.
Ejecutar la aplicación de forma local
Su aplicación instrumentada envía datos de rastro al daemon de X-Ray. El daemon almacena en búfer documentos de segmento y los carga en lotes en el servicio X-Ray. El daemon necesita permisos de escritura para cargar los datos de rastro y telemetría en el servicio X-Ray.
Cuando ejecute el daemon localmente, cree un IAM rol, asuma el rol y almacene las credenciales temporales en variables de entorno o en un archivo nombrado credentials
dentro de una carpeta denominada .aws
en su carpeta de usuario. Para obtener más información, consulte Uso de credenciales de seguridad temporales con AWS CLI.
ejemplo ~/.aws/credentials
[default]
aws_access_key_id={access key ID}
aws_secret_access_key={access key}
aws_session_token={AWS session token}
Si ya configuró las credenciales para usarlas con el AWS SDK o AWS CLI, el daemon puede usarlas. En caso de que haya varios perfiles disponibles, el daemon utilizará el perfil predeterminado.
Ejecutar la aplicación en AWS
Cuando ejecutes la aplicación AWS, usa un rol para conceder permiso a la EC2 instancia de Amazon o a la función Lambda que ejecuta el daemon.
-
Amazon Elastic Compute Cloud (AmazonEC2): crea un IAM rol y adjúntalo a la EC2 instancia como un perfil de instancia.
-
Amazon Elastic Container Service (AmazonECS): crea un IAM rol y adjúntalo a las instancias de contenedor como un IAMrol de instancia de contenedor.
-
AWS Elastic Beanstalk (Elastic Beanstalk): Elastic Beanstalk incluye los permisos de X-Ray en su perfil de instancia predeterminado. Puede usar el perfil de instancia predeterminado o añadir permisos de escritura a un perfil de instancia personalizado.
-
AWS Lambda (Lambda): agrega permisos de escritura a la función de ejecución de la función.
Para crear un rol y usarlo con X-Ray
-
Abra la consola de IAM
. -
Elija Roles.
-
Elija Crear nuevo rol.
-
En Role Name (Nombre del rol), escriba
xray-application
. Elija Paso siguiente. -
En Tipo de función, selecciona Amazon EC2.
-
Adjunte la siguiente política administrada para que la aplicación tenga acceso a los Servicios de AWS:
-
AWSXRayDaemonWriteAccess— Da permiso al daemon de X-Ray para cargar datos de rastreo.
Si su aplicación lo utiliza AWS SDK para acceder a otros servicios, añada políticas que concedan el acceso a esos servicios.
-
-
Elija Paso siguiente.
-
Seleccione Crear rol.
Permisos de usuario para cifrado
X-Ray cifra todos los datos de rastro y de forma predeterminada y puede configurarlo para que use una clave que usted administre. Si elige una clave gestionada por el AWS Key Management Service cliente, debe asegurarse de que la política de acceso de la clave le permita conceder permiso a X-Ray para usarla para cifrar. Otros usuarios de su cuenta también tienen que obtener acceso a la clave para ver los datos de rastro cifrados en la consola de X-Ray.
Para una clave administrada por el cliente, configure su clave con una política de acceso que permita las siguientes acciones:
-
El usuario que configura la clave en X-Ray tiene permisos para llamar a
kms:CreateGrant
ykms:DescribeKey
. -
Los usuarios que pueden tener acceso a los datos de rastreo cifrados tienen permiso para llamar a
kms:Decrypt
.
Al añadir un usuario al grupo de usuarios clave en la sección de configuración de claves de la IAM consola, dicho usuario tiene permiso para realizar ambas operaciones. El permiso solo debe estar establecido en la política clave, por lo que no necesita ningún AWS KMS permiso para sus usuarios, grupos o funciones. Para obtener más información, consulte Uso de políticas clave en la Guía para AWS KMS desarrolladores.
Para el cifrado predeterminado, o si elige el AWS administrado CMK (aws/xray
), el permiso depende de quién tenga acceso a X-RayAPIs. Cualquier persona con acceso a PutEncryptionConfig
, incluido en AWSXrayFullAccess
, puede cambiar la configuración de cifrado. Para evitar que un usuario cambie la clave de cifrado, no le conceda permiso para utilizar PutEncryptionConfig
.