Rol de servicio de Greengrass - AWS IoT Greengrass

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.

Rol de servicio de Greengrass

El rol de servicio de Greengrass es un rol de servicio de AWS Identity and Access Management (IAM) que autoriza a AWS IoT Greengrass a acceder a recursos de servicios de AWS en su nombre. Esta función permite verificar la identidad de AWS IoT Greengrass los dispositivos cliente y administrar la información de conectividad de los dispositivos principales.

nota

AWS IoT Greengrass V1también utiliza esta función para realizar tareas esenciales. Para obtener más información, consulte la función de servicio de Greengrass en la Guía AWS IoT Greengrass V1para desarrolladores.

Para permitir a AWS IoT Greengrass acceder a sus recursos, el rol de servicio de Greengrass debe estar asociado a su Cuenta de AWS y especificar AWS IoT Greengrass como entidad de confianza. El rol debe incluir la política AWSGreengrassResourceAccessRolePolicyadministrada o una política personalizada que defina permisos equivalentes para las AWS IoT Greengrass funciones que utilice. AWSmantiene esta política, que define el conjunto de permisos que se AWS IoT Greengrass utilizan para acceder a AWS los recursos. Para obtener más información, consulte Política administrada por AWS: AWSGreengrassResourceAccessRolePolicy.

Puedes reutilizar la misma función de servicio de Greengrass en todas partesRegiones de AWS, pero debes asociarla a tu cuenta en todos los Región de AWS lugares donde la utilices. AWS IoT Greengrass Si la función de servicio no está configurada en la versión actualRegión de AWS, los dispositivos principales no pueden verificar los dispositivos cliente ni actualizar la información de conectividad.

En las siguientes secciones se describe cómo crear y administrar el rol de servicio de Greengrass con o. AWS Management Console AWS CLI

nota

Además de la función de servicio que autoriza el acceso a nivel de servicio, se asigna una función de intercambio de fichas a los dispositivos principales de Greengrass. La función de intercambio de fichas es una función de IAM independiente que controla la forma en que los componentes de Greengrass y las funciones de Lambda del dispositivo principal pueden acceder a los servicios. AWS Para obtener más información, consulte Autorizar a los dispositivos principales a interactuar con AWS los servicios.

Administrar el rol de servicio de Greengrass (consola)

La consola de AWS IoT facilita la administración del rol de servicio de Greengrass. Por ejemplo, cuando configura la detección de dispositivos cliente para un dispositivo principal, la consola comprueba si Cuenta de AWS está vinculado a un rol de servicio de Greengrass en el momento actual. Región de AWS De lo contrario, la consola puede crear y configurar un rol de servicio por usted. Para obtener más información, consulte Creación del rol de servicio de Greengrass (consola).

Puede utilizar la consola para las siguientes tareas de administración de roles:

nota

El usuario que ha iniciado sesión en la consola debe tener permisos para ver, crear o cambiar el rol de servicio.

Buscar el rol de servicio de Greengrass (consola)

Siga los siguientes pasos para encontrar el rol de servicio que AWS IoT Greengrass utiliza en el actualRegión de AWS.

  1. Vaya a la consola de AWS IoT.

  2. En el panel de navegación, seleccione Configuración.

  3. Desplácese hasta la sección Greengrass service role (Rol de servicio de Greengrass) para ver el rol de servicio y sus políticas.

    Si no ve ningún rol de servicio, la consola puede crear o configurar uno automáticamente. Para obtener más información, consulte Creación del rol de servicio de Greengrass.

Creación del rol de servicio de Greengrass (consola)

La consola puede crear y configurar un rol de servicio de Greengrass predeterminado por usted. Este rol incluye las siguientes propiedades.

Propiedad Valor
Nombre Greengrass_ServiceRole
Entidad de confianza AWS service: greengrass
Política AWSGreengrassResourceAccessRolePolicy
nota

Si crea este rol con el script de configuración del AWS IoT Greengrass V1 dispositivo, el nombre del rol esGreengrassServiceRole_random-string.

Al configurar la detección de dispositivos cliente para un dispositivo principal, la consola comprueba si una función de servicio de Greengrass está asociada a la suya Cuenta de AWS en la versión actual. Región de AWS Si no lo hay, la consola le pedirá que permita a AWS IoT Greengrass leer y escribir en los servicios de AWS en su nombre.

Si concede permiso, la consola comprueba si existe un rol denominado Greengrass_ServiceRole en su Cuenta de AWS.

  • Si el rol existe, la consola asocia el rol de servicio a su Cuenta de AWS en la Región de AWS actual.

  • Si el rol no existe, la consola crea un rol de servicio de Greengrass predeterminado y lo asocia a su Cuenta de AWS en la Región de AWS actual.

nota

Si desea crear un rol de servicio con políticas de rol personalizadas, utilice la consola de IAM para crear o modificar el rol. Para obtener más información, consulte Creación de un rol para delegar permisos a un servicio AWS o Modificación de un rol en la Guía del usuario de IAM. Asegúrese de que el rol concede permisos equivalentes a la política administrada de AWSGreengrassResourceAccessRolePolicy para las características y recursos que utiliza. Le recomendamos que incluya también las claves de contexto de condición global aws:SourceArn y aws:SourceAccount en su política de confianza para ayudar a prevenir el problema de seguridad del suplente confuso. Las claves de contexto de condición restringen el acceso para permitir solo las solicitudes que provienen de la cuenta especificada y del espacio de trabajo de Greengrass. Para obtener más información sobre el problema del suplente confuso, consulte Prevención del suplente confuso entre servicios.

Si crea un rol de servicio, regrese a la AWS IoT consola y asocie el rol al suyoCuenta de AWS. Puede hacerlo en la función de servicio de Greengrass en la página de configuración.

Cambiar el rol de servicio de Greengrass (consola)

Utilice el siguiente procedimiento para seleccionar un rol de servicio de Greengrass diferente y asociarlo a su Cuenta de AWS en la Región de AWS seleccionada actualmente en la consola.

  1. Vaya a la consola de AWS IoT.

  2. En el panel de navegación, seleccione Configuración.

  3. En Rol de servicio de Greengrass, seleccione Elegir un rol diferente.

    Se abre el cuadro de diálogo Actualizar el rol de servicio de Greengrass y muestra los roles de IAM Cuenta de AWS que se definen AWS IoT Greengrass como una entidad de confianza.

  4. Elija el rol de servicio de Greengrass que desee asignar.

  5. Elija Adjuntar rol.

Desasociar el rol de servicio de Greengrass (consola)

Utilice el siguiente procedimiento para separar el rol de servicio de Greengrass de AWS su cuenta actual. Región de AWS Este revoca los permisos de AWS IoT Greengrass para acceder a los servicios de AWS en la Región de AWS actual.

importante

La desasociación del rol de servicio podría interrumpir las operaciones activas.

  1. Vaya a la consola de AWS IoT.

  2. En el panel de navegación, seleccione Configuración.

  3. En Rol de servicio de Greengras, seleccione Desasociar rol.

  4. En el cuadro de diálogo de confirmación, elija Desconectar.

nota

Si ya no necesita el rol, puede eliminarlo en la consola de IAM. Para obtener más información, consulte Eliminación de roles o perfiles de instancia en la Guía del usuario de IAM.

Otros roles podrían permitir que AWS IoT Greengrass obtenga acceso a los recursos. Para buscar todos los roles que permiten que AWS IoT Greengrass asuma los permisos en su nombre, en la consola de IAM, en la página Roles, busque los roles que incluyan AWS service: greengrass en la columna Entidades de confianza.

Gestione el rol de servicio de Greengrass (CLI)

En los siguientes procedimientos, asumimos que AWS Command Line Interface está instalado y configurado para usar suCuenta de AWS. Para obtener más información, consulte Instalación, actualización y desinstalación AWS CLI y configuración del AWS CLI en la Guía del AWS Command Line Interface usuario.

Puede utilizar la AWS CLI para las siguientes tareas de administración de roles:

Obtener el rol de servicio de Greengrass (CLI)

Utilice el procedimiento siguiente para descubrir si un rol de servicio de Greengrass está asociado a su Cuenta de AWS en una Región de AWS.

  • Obtenga el rol de servicio. Sustituya región por su Región de AWS (por ejemplo, us-west-2).

    aws greengrassv2 get-service-role-for-account --region region

    Si un rol de servicio de Greengrass ya está asociado a su cuenta, la solicitud devuelve los siguientes metadatos del rol.

    { "associatedAt": "timestamp", "roleArn": "arn:aws:iam::account-id:role/path/role-name" }

    Si la solicitud no devuelve los metadatos del rol, debe crear el rol de servicio (si no existe) y asociarlo a su cuenta en. Región de AWS

Creación del rol de servicio de Greengrass (CLI)

Siga los pasos que se indican a continuación para crear un rol y asociarlo a su Cuenta de AWS.

Para crear el rol de servicio mediante IAM
  1. Cree el rol con una política de confianza que permita a AWS IoT Greengrass asumir el rol. Este ejemplo crea un rol denominado Greengrass_ServiceRole, pero puede utilizar un nombre distinto. Le recomendamos que incluya también las claves de contexto de condición global aws:SourceArn y aws:SourceAccount en su política de confianza para ayudar a prevenir el problema de seguridad del suplente confuso. Las claves de contexto de condición restringen el acceso para permitir solo las solicitudes que provienen de la cuenta especificada y del espacio de trabajo de Greengrass. Para obtener más información sobre el problema del suplente confuso, consulte Prevención del suplente confuso entre servicios.

    Linux or Unix
    aws iam create-role --role-name Greengrass_ServiceRole --assume-role-policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "greengrass.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:greengrass:region:account-id:*" }, "StringEquals": { "aws:SourceAccount": "account-id" } } } ] }'
    Windows Command Prompt (CMD)
    aws iam create-role --role-name Greengrass_ServiceRole --assume-role-policy-document "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Principal\":{\"Service\":\"greengrass.amazonaws.com\"},\"Action\":\"sts:AssumeRole\",\"Condition\":{\"ArnLike\":{\"aws:SourceArn\":\"arn:aws:greengrass:region:account-id:*\"},\"StringEquals\":{\"aws:SourceAccount\":\"account-id\"}}}]}"
    PowerShell
    aws iam create-role --role-name Greengrass_ServiceRole --assume-role-policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "greengrass.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:greengrass:region:account-id:*" }, "StringEquals": { "aws:SourceAccount": "account-id" } } } ] }'
  2. Copie el ARN del rol de los metadatos del rol en la salida. Puede utilizar el ARN para asociar el rol a su cuenta.

  3. Asocie la política de AWSGreengrassResourceAccessRolePolicy al rol.

    aws iam attach-role-policy --role-name Greengrass_ServiceRole --policy-arn arn:aws:iam::aws:policy/service-role/AWSGreengrassResourceAccessRolePolicy
Para asociar el rol de servicio con su Cuenta de AWS
  • Asocie el rol a su cuenta. Reemplace arn-rol por el ARN del rol de servicio y región por su Región de AWS (por ejemplo, us-west-2).

    aws greengrassv2 associate-service-role-to-account --role-arn role-arn --region region

    Si se ejecuta correctamente, la solicitud devuelve la siguiente respuesta.

    { "associatedAt": "timestamp" }

Eliminar el rol de servicio de Greengrass (CLI)

Utilice los pasos siguientes para desasociar el rol de servicio de Greengrass de su Cuenta de AWS.

  • Desasocie el rol de servicio de su cuenta. Sustituya región por su Región de AWS (por ejemplo, us-west-2).

    aws greengrassv2 disassociate-service-role-from-account --region region

    Si se ejecuta correctamente, se devuelve la siguiente respuesta.

    { "disassociatedAt": "timestamp" }
    nota

    Debe eliminar el rol de servicio si no lo está utilizando en ninguna Región de AWS. Use primero delete-role-policy para desasociar la política administrada AWSGreengrassResourceAccessRolePolicy del rol y, a continuación, utilice delete-role para eliminar el rol. Para obtener más información, consulte Eliminación de roles o perfiles de instancia en la Guía del usuario de IAM.

Véase también