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.
De forma predeterminada, los usuarios y los roles de IAM no tienen permiso para crear, ver ni modificar recursos de AWS IoT . Tampoco pueden realizar tareas con la API AWS Management Console AWS CLI, o AWS . Un administrador de IAM debe crear políticas de IAM que concedan permisos a los usuarios y a los roles para realizar operaciones de la API concretas en los recursos especificados que necesiten. El administrador debe asociar esas políticas a los usuarios o grupos que necesiten esos permisos.
Para obtener información acerca de cómo crear una política basada en identidad de IAM con estos documentos de políticas JSON de ejemplo, consulte Creación de políticas en la pestaña JSON en la Guía del usuario de IAM.
Temas
Prácticas recomendadas relativas a políticas
Las políticas basadas en la identidad determinan si alguien puede crear AWS IoT recursos de tu cuenta, acceder a ellos o eliminarlos. Estas acciones pueden generar costos adicionales para su Cuenta de AWS. Siga estas directrices y recomendaciones al crear o editar políticas basadas en identidades:
-
Comience con las políticas AWS administradas y avance hacia los permisos con privilegios mínimos: para empezar a conceder permisos a sus usuarios y cargas de trabajo, utilice las políticas AWS administradas que otorgan permisos para muchos casos de uso comunes. Están disponibles en su. Cuenta de AWS Le recomendamos que reduzca aún más los permisos definiendo políticas administradas por el AWS cliente que sean específicas para sus casos de uso. Con el fin de obtener más información, consulta las políticas administradas por AWS o las políticas administradas por AWS para funciones de tarea en la Guía de usuario de IAM.
-
Aplique permisos de privilegio mínimo: cuando establezca permisos con políticas de IAM, conceda solo los permisos necesarios para realizar una tarea. Para ello, debe definir las acciones que se puedes llevar a cabo en determinados recursos en condiciones específicas, también conocidos como permisos de privilegios mínimos. Con el fin de obtener más información sobre el uso de IAM para aplicar permisos, consulta Políticas y permisos en IAM en la Guía del usuario de IAM.
-
Utiliza condiciones en las políticas de IAM para restringir aún más el acceso: puedes agregar una condición a sus políticas para limitar el acceso a las acciones y los recursos. Por ejemplo, puedes escribir una condición de políticas para especificar que todas las solicitudes deben enviarse utilizando SSL. También puedes usar condiciones para conceder el acceso a las acciones del servicio si se utilizan a través de una acción específica Servicio de AWS, por ejemplo AWS CloudFormation. Para obtener más información, consulta Elementos de la política de JSON de IAM: Condición en la Guía del usuario de IAM.
-
Utiliza el analizador de acceso de IAM para validar las políticas de IAM con el fin de garantizar la seguridad y funcionalidad de los permisos: el analizador de acceso de IAM valida políticas nuevas y existentes para que respeten el lenguaje (JSON) de las políticas de IAM y las prácticas recomendadas de IAM. El analizador de acceso de IAM proporciona más de 100 verificaciones de políticas y recomendaciones procesables para ayudar a crear políticas seguras y funcionales. Para más información, consulte Política de validación de Analizador de acceso de IAM en la Guía del usuario de IAM.
-
Requerir autenticación multifactor (MFA): si tiene un escenario que requiere usuarios de IAM o un usuario raíz en Cuenta de AWS su cuenta, active la MFA para mayor seguridad. Para exigir la MFA cuando se invoquen las operaciones de la API, añada condiciones de MFA a sus políticas. Para más información, consulte Configuración del acceso a una API protegido por MFA en la Guía del usuario de IAM.
Para obtener más información sobre las prácticas recomendadas de IAM, consulte Prácticas recomendadas de seguridad en IAM en la Guía del usuario de IAM.
Mediante la consola de AWS IoT
Para acceder a la AWS IoT consola, debe tener un conjunto mínimo de permisos. Estos permisos deben permitirle enumerar y ver detalles sobre los AWS IoT recursos de su cuenta Cuenta de AWS. Si crea una política basada en identidades que sea más restrictiva que el mínimo de permisos necesarios, la consola no funcionará del modo esperado para las entidades (usuarios o roles) que tengan esa política.
Para garantizar que esas entidades puedan seguir utilizando la AWS IoT consola, adjunte también la siguiente política AWS administrada a las entidades:AWSIoTFullAccess
. Para obtener más información, consulte Adición de permisos a un usuario en la Guía del usuario de IAM.
No es necesario conceder permisos mínimos de consola a los usuarios que solo realizan llamadas a la API AWS CLI o a la AWS API. En su lugar, permite acceso únicamente a las acciones que coincidan con la operación de API que intenta realizar.
Permitir a los usuarios consultar sus propios permisos
En este ejemplo, se muestra cómo podría crear una política que permita a los usuarios de IAM ver las políticas gestionadas e insertadas que se asocian a la identidad de sus usuarios. Esta política incluye permisos para completar esta acción en la consola o mediante programación mediante la API AWS CLI o AWS .
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ViewOwnUserInfo",
"Effect": "Allow",
"Action": [
"iam:GetUserPolicy",
"iam:ListGroupsForUser",
"iam:ListAttachedUserPolicies",
"iam:ListUserPolicies",
"iam:GetUser"
],
"Resource": ["arn:aws:iam::*:user/${aws:username}"]
},
{
"Sid": "NavigateInConsole",
"Effect": "Allow",
"Action": [
"iam:GetGroupPolicy",
"iam:GetPolicyVersion",
"iam:GetPolicy",
"iam:ListAttachedGroupPolicies",
"iam:ListGroupPolicies",
"iam:ListPolicyVersions",
"iam:ListPolicies",
"iam:ListUsers"
],
"Resource": "*"
}
]
}
Visualización de recursos de AWS IoT basados en etiquetas
Puede utilizar las condiciones de su política basada en identidad para controlar el acceso a los recursos de AWS IoT basados en etiquetas. En este ejemplo, se muestra cómo crear una política que permita visualizar un objeto. Sin embargo, los permisos solo se conceden si la etiqueta de la cosa Owner
tiene el valor del nombre de usuario de dicho usuario. Esta política también proporciona los permisos necesarios para llevar a cabo esta acción en la consola.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ListBillingGroupsInConsole", "Effect": "Allow", "Action": "iot:ListBillingGroups", "Resource": "*" }, { "Sid": "ViewBillingGroupsIfOwner", "Effect": "Allow", "Action": "iot:DescribeBillingGroup", "Resource": "arn:aws:iot:*:*:billinggroup/*", "Condition": { "StringEquals": {"aws:ResourceTag/Owner": "${aws:username}"} } } ] }
También puede asociar esta política al usuario de IAM en su cuenta. Si un usuario llamado richard-roe
intenta ver un grupo de AWS IoT facturación, el grupo de facturación debe estar etiquetado Owner=richard-roe
o. owner=richard-roe
De lo contrario, se le deniega el acceso. La clave de la etiqueta de condición Owner
coincide con los nombres de las claves de condición Owner
y owner
porque no distinguen entre mayúsculas y minúsculas. Para obtener más información, consulte Elementos de la política de JSON de IAM: Condición en la Guía del usuario de IAM.
Visualización de los recursos de AWS IoT Device Advisor en función de las etiquetas
Puede utilizar las condiciones de su política basada en la identidad para controlar el acceso a los recursos de AWS IoT
Device Advisor basados en etiquetas. El siguiente ejemplo muestra cómo crear una política que permita ver una definición de conjunto determinada. Sin embargo, el permiso solo se otorga si la etiqueta de definición de conjunto tiene SuiteType
ajustado con el valor MQTT
. Esta política también proporciona los permisos necesarios para llevar a cabo esta acción en la consola.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewSuiteDefinition", "Effect": "Allow", "Action": "iotdeviceadvisor:GetSuiteDefinition", "Resource": "arn:aws:iotdeviceadvisor:*:*:suitedefinition/*", "Condition": { "StringEquals": {"aws:ResourceTag/SuiteType": "MQTT"} } } ] }