En esta página, se describe cómo crear y administrar funciones personalizadas de la administración de identidades y accesos (IAM). La administración de funciones incluye la modificación, la inhabilitación, la enumeración, la eliminación y la recuperación de funciones.
Antes de comenzar
Habilita IAM API.
Comprende la jerarquía de recursos de Google Cloud.
Funciones requeridas
A fin de obtener los permisos que necesitas para crear y administrar roles personalizados, pídele a tu administrador que te otorgue los siguientes roles de IAM:
-
Para administrar roles en un proyecto: administrador de roles (
roles/iam.roleAdmin
) en el proyecto en el que deseas administrar roles -
Para administrar roles de una organización: administrador de roles de la organización (
roles/iam.organizationRoleAdmin
) en la organización en la que deseas administrar roles
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso.
Visualiza los permisos disponibles para los proyectos, las carpetas y las organizaciones
Puedes crear funciones personalizadas para una organización completa o para un proyecto específico de esa organización.
Puedes incluir muchos permisos de IAM, pero no todos, en las funciones personalizadas. Cada permiso tiene uno de los siguientes niveles de asistencia para su uso en funciones personalizadas:
Nivel de compatibilidad | Descripción |
---|---|
SUPPORTED |
El permiso es totalmente compatible en funciones personalizadas. |
TESTING |
Google prueba el permiso para verificar su compatibilidad con las funciones personalizadas. Puedes incluir el permiso en funciones personalizadas, pero es posible que notes comportamientos inesperados. No se recomienda para su uso en producción. |
NOT_SUPPORTED |
El permiso no es compatible con funciones personalizadas. |
Una función personalizada a nivel de la organización puede incluir cualquiera de los permisos de IAM compatibles con las funciones personalizadas.
Una función personalizada a nivel del proyecto puede contener cualquier permiso admitido, excepto los permisos que solo son relevantes a nivel de la organización o carpeta, como resourcemanager.organizations.get
.
A fin de verificar qué permisos están disponibles para los roles personalizados a nivel de proyecto y de la organización, puedes usar la CLI de gcloud o la API de Identity and Access Management a fin de obtener una lista de los permisos que están disponibles en una organización o un proyecto específicos. Por ejemplo, puedes obtener todos los permisos disponibles para las funciones personalizadas que se crean en el proyecto.
Es posible que algunos permisos no sean visibles para ti o no se puedan usar en una función personalizada, incluso si son compatibles con funciones personalizadas. Por ejemplo, puede que el uso de un permiso no esté habilitado en funciones personalizadas si no habilitaste la API para el servicio.
gcloud
Usa el comando gcloud iam list-testable-permissions
a fin de obtener una lista de permisos disponibles para funciones personalizadas en una organización o proyecto específico. En la respuesta, se enumeran los permisos que puedes usar en las funciones personalizadas de esa organización o proyecto.
A fin de enumerar los permisos que están disponibles en funciones personalizadas para una organización o un proyecto, ejecuta este comando:
gcloud iam list-testable-permissions full-resource-name \ --filter="customRolesSupportLevel!=NOT_SUPPORTED"
Reemplaza full-resource-name
por uno de los siguientes valores:
- Proyecto:
//cloudresourcemanager.googleapis.com/projects/project-id
(por ejemplo,//cloudresourcemanager.googleapis.com/projects/my-project-id
) - Organización:
//cloudresourcemanager.googleapis.com/organizations/numeric-id
(por ejemplo,//cloudresourcemanager.googleapis.com/organizations/123456789012
)
Los resultados indican si cada permiso es compatible con roles personalizados.
Los permisos que no tienen un campo customRolesSupportLevel
son totalmente compatibles.
El comando list-testable-permissions
puede mostrar cientos de resultados. En este ejemplo parcial, se muestra el formato de cada resultado:
---
name: appengine.applications.create
stage: GA
---
customRolesSupportLevel: TESTING
name: appengine.applications.disable
stage: GA
---
name: appengine.applications.get
stage: GA
---
name: appengine.applications.update
stage: GA
---
name: appengine.instances.delete
stage: GA
---
name: appengine.instances.get
stage: GA
---
REST
El método permissions.queryTestablePermissions
permite enumerar los permisos disponibles en una organización o proyecto.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
full-resource-name
: Un URI que consiste en el nombre del servicio y la ruta al recurso. Para ver ejemplos, consulta Nombres completos de recursos.page-size
: Opcional. Es la cantidad de permisos que se incluirán en la respuesta. El valor predeterminado es 100 y el valor máximo es 1,000. Si la cantidad de permisos es mayor que el tamaño de la página, la respuesta contiene un token de paginación que puedes usar para consultar la siguiente página de resultados.next-page-token
: Opcional. Es el token de paginación que se mostró en una respuesta anterior de este método. Si se especifica, la lista de permisos que se pueden probar comenzará desde el punto en que finalizó la solicitud anterior.
Método HTTP y URL:
POST https://iam.googleapis.com/v1/permissions:queryTestablePermissions
Cuerpo JSON de la solicitud:
{ "fullResourceName": "full-resource-name" "pageSize": page-size, "pageToken": "next-page-token" }
Para enviar tu solicitud, expande una de estas opciones:
La respuesta contiene la lista de permisos.
{ "permissions": [ { "name": "iam.serviceAccountKeys.create", "stage": "GA" }, { "name": "iam.serviceAccountKeys.delete", "stage": "GA" }, { "name": "iam.serviceAccountKeys.get", "stage": "GA" } ], "nextPageToken": "CgoHBajEfjUDQyABEPaIv5vIiMDTVhgDIhtpYW0uc2VydmljZUFjY291bnRLZXlzLmxpc3Q" }
C++
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para C++.
C#
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para C#.
Go
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para Go.
Python
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para Python.
Obtén los metadatos de la función
Antes de crear una función personalizada, es posible que desees obtener los metadatos para las funciones predefinidas y personalizadas. Los metadatos de función incluyen el ID de función y los permisos contenidos en la función. Puedes ver los metadatos con la consola o la API de IAM.
Para ver los metadatos de función, usa uno de los siguientes métodos:
Console
En la consola, ve a la página Roles.
Selecciona tu organización o proyecto de la lista desplegable en la parte superior de la página.
Selecciona la casilla de verificación de una o más funciones para ver los permisos de función. El panel lateral derecho muestra los permisos contenidos en las funciones, si los hay.
Los íconos de la columna Tipo (Type) indican si es una función personalizada
o una función predefinida
Si deseas buscar todas las funciones que incluyen un permiso específico, escribe el nombre del permiso en el cuadro Filtro en la parte superior de la lista de funciones.
gcloud
Usa el comando gcloud iam roles describe
para ver los metadatos de las funciones predefinidas y personalizadas.
Para ver los metadatos de una función predefinida, ejecuta el siguiente comando de :
gcloud iam roles describe role-id
role-id
es el ID de la función. Las funciones predefinidas incluyen el prefijo role
en sus ID, por ejemplo, roles/iam.roleViewer
.
En el siguiente ejemplo, se demuestra la salida del comando describe
cuando se ejecuta en la función predefinida roles/iam.roleViewer
:
gcloud iam roles describe roles/iam.roleViewer
description: Read access to all custom roles in the project. etag: AA== includedPermissions: - iam.roles.get - iam.roles.list - resourcemanager.projects.get - resourcemanager.projects.getIamPolicy name: roles/iam.roleViewer stage: GA title: Role Viewer
Para ver los metadatos de una función personalizada, ejecuta uno de los siguientes comandos :
Para ver los metadatos de una función personalizada creada a nivel de la organización, ejecuta el siguiente comando:
gcloud iam roles describe --organization=organization-id role-id
Para ver los metadatos de una función personalizada creada a nivel de proyecto, ejecuta el siguiente comando:
gcloud iam roles describe --project=project-id role-id
Cada valor de marcador de posición se describe a continuación:
organization-id
es el ID numérico de la organización, como123456789012
.project-id
es el nombre del proyecto, comomy-project-id
.role-id
es el ID de la función, sin incluir los prefijos comoprojects/
,organizations/
oroles/
. Por ejemplo,myCompanyAdmin
.
Para obtener más información, consulta la documentación de referencia de gcloud iam roles describe
.
REST
El método roles.get
permite obtener la definición de una función.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
-
full-role-id
: Es el ID de función completo, incluidos los prefijosorganizations/
,projects/
oroles/
. Por ejemplo,organizations/123456789012/roles/myCompanyAdmin
.
Método HTTP y URL:
GET https://iam.googleapis.com/v1/full-role-id
Para enviar tu solicitud, expande una de estas opciones:
La respuesta contiene la definición de la función.
{ "name": "projects/my-project/roles/customRole", "title": "My Custom Role", "description": "My custom role description.", "includedPermissions": [ "storage.buckets.get", "storage.buckets.list" ], "etag": "BwWiPg2fmDE=" }
C++
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para C++.
C#
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para C#.
Go
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para Go.
Python
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para Python.
Crea una función personalizada
Puedes crear una función personalizada a nivel del proyecto o de la organización.
Para crear una función personalizada, el emisor debe tener el permiso iam.roles.create
.
De forma predeterminada, el propietario de un proyecto o una organización tiene este permiso y puede crear y administrar funciones personalizadas.
A los usuarios que no son propietarios, incluidos los administradores de la organización, se les debe asignar el rol Administrador de roles de la organización o el rol Administrador de roles de IAM.
Cada rol personalizado puede contener hasta 3,000 permisos. Además, el tamaño total máximo del título, la descripción y los nombres de permisos para un rol personalizado es de 64 KB. Si necesitas crear un rol personalizado más grande, puedes dividir los permisos en varios roles personalizados. Elige títulos de roles que muestren la relación entre los roles personalizados, como Custom Admin (1 of 2)
y Custom Admin (2 of 2)
.
Cada función personalizada puede tener una etapa de lanzamiento. La mayoría de las etapas de lanzamiento son informativas y te ayudan a realizar un seguimiento sobre cada función a fin de determinar si está lista para el uso generalizado.
Además, la etapa de lanzamiento DISABLED
te permite inhabilitar una función personalizada. Para obtener más información sobre las etapas de lanzamiento, consulta Ejecuta pruebas y realiza la implementación.
Console
Algunas funciones predefinidas contienen permisos obsoletos o permisos que, de otra manera, no están permitidos en las funciones personalizadas. Si intentas crear una función personalizada basada en una de estas funciones predefinidas, la función personalizada omitirá los permisos obsoletos y restringidos.
Para crear una nueva función personalizada desde cero:
En la consola, ve a la página Roles.
En la lista desplegable de la parte superior de la página, selecciona la organización o el proyecto en el que deseas crear una función.
Haz clic en Crear función.
Ingresa un Nombre, un Título, una Descripción y una Etapa de lanzamiento de la función para la función. El nombre de la función no se puede cambiar después de que se crea la función.
Haz clic en Agregar permisos.
Selecciona los permisos que desees incluir en la función y haz clic en Agregar permisos. Usa las listas desplegables Todos los servicios y Todos los tipos para filtrar y seleccionar permisos por servicios y tipos.
Crea un rol personalizado según un rol predefinido existente:
- En la consola, ve a la página Roles.
- Selecciona la organización o el proyecto en el que deseas crear una función.
- Selecciona las funciones en las que deseas basar la nueva función personalizada.
- Haz clic en Crear función de selección.
- Ingresa un Nombre, un Título, una Descripción y una Etapa de lanzamiento de la función para la función. El nombre de la función no se puede cambiar después de que se crea la función.
- Desmarca los permisos que deseas excluir de la función.
- Haz clic en Agregar permisos para incluir cualquier permiso.
- Haz clic en Crear.
gcloud
Usa el comando gcloud iam roles create
para crear nuevas funciones personalizadas. Puedes usar este comando de las dos maneras que se mencionan a continuación:
- Con un archivo YAML que contiene la definición de la función
- Con marcas para especificar la definición de la función
Cuando crees una función personalizada, debes especificar si se aplica a nivel de la organización o a nivel del proyecto mediante las marcas --organization=organization-id
o --project=project-id
. En cada uno de los siguientes ejemplos, se crea una función personalizada a nivel del proyecto.
Una función personalizada solo puede contener permisos que se admiten en las funciones personalizadas. Si la función personalizada contiene otros permisos, el comando falla.
Para crear una función personalizada con un archivo YAML, haz lo siguiente:
Crea un archivo YAML que contenga la definición de tu función personalizada. El archivo debe estar estructurado de la siguiente manera:
title: role-title description: role-description stage: launch-stage includedPermissions: - permission-1 - permission-2
Cada valor de marcador de posición se describe a continuación:
role-title
es un título descriptivo para la función, como"My Company Admin"
.role-description
es una descripción breve de la función, como"My custom role description"
.launch-stage
indica la etapa en la que se encuentra una función en el ciclo de vida de lanzamiento, comoALPHA
,BETA
oGA
.permission-1
ypermission-2
son permisos para incluir en la función personalizada, comoiam.roles.get
. No puedes usar caracteres comodín (*
) en los nombres de permisos.
Guarda el archivo YAML y, luego, ejecuta uno de los siguientes comandos:
Para crear una función personalizada a nivel de la organización, ejecuta el siguiente comando:
gcloud iam roles create role-id --organization=organization-id \ --file=yaml-file-path
Para crear una función personalizada a nivel de proyecto, ejecuta el siguiente comando:
gcloud iam roles create role-id --project=project-id \ --file=yaml-file-path
Cada valor de marcador de posición se describe a continuación:
role-id
es el nombre de la función, comomyCompanyAdmin
.organization-id
es el ID numérico de la organización, como123456789012
.project-id
es el nombre del proyecto, comomy-project-id
.yaml-file-path
es la ruta de acceso a la ubicación de tu archivo YAML que contiene la definición de la función personalizada.
Ejemplos
En el siguiente archivo YAML de ejemplo, se muestra cómo crear una definición de función:
title: "My Company Admin" description: "My custom role description." stage: "ALPHA" includedPermissions: - iam.roles.get - iam.roles.list
En el siguiente ejemplo, se muestra cómo crear una función a nivel de la organización mediante el archivo YAML:
gcloud iam roles create myCompanyAdmin --organization=123456789012 \ --file=my-role-definition.yaml
Si la función se creó con éxito, el resultado del comando es similar al siguiente:
Created role [myCompanyAdmin]. description: My custom role description. etag: BwVkBX0sQD0= includedPermissions: - iam.roles.get - iam.roles.list name: organizations/123456789012/roles/myCompanyAdmin stage: ALPHA title: My Company Admin
En el siguiente ejemplo, se muestra cómo crear una función a nivel de proyecto mediante el archivo YAML:
gcloud iam roles create myCompanyAdmin --project=my-project-id \ --file=my-role-definition.yaml
Si la función se creó con éxito, el resultado del comando es similar al siguiente:
Created role [myCompanyAdmin]. description: My custom role description. etag: BwVkBX0sQD0= includedPermissions: - iam.roles.get - iam.roles.list name: projects/my-project-id/roles/myCompanyAdmin stage: ALPHA title: My Company Admin
Para crear una función personalizada mediante marcas, haz lo siguiente:
Ejecuta uno de los siguientes comandos:
Para crear una función personalizada a nivel de la organización, ejecuta el siguiente comando:
gcloud iam roles create role-id --organization=organization-id \ --title=role-title --description=role-description \ --permissions="permissions-list" --stage=launch-stage
Para crear una función personalizada a nivel de proyecto, ejecuta el siguiente comando:
gcloud iam roles create role-id --project=project-id \ --title=role-title --description=role-description \ --permissions="permissions-list" --stage=launch-stage
Cada valor de marcador de posición se describe a continuación:
role-id
es el nombre de la función, comomyCompanyAdmin
.organization-id
es el ID numérico de la organización, como123456789012
.project-id
es el nombre del proyecto, comomy-project-id
.role-title
es un título descriptivo para la función, como"My Company Admin"
.role-description
es una descripción breve de la función, como"My custom role description."
.permissions-list
contiene una lista de permisos separada por comas que deseas incluir en la función personalizada. Por ejemplo:iam.roles.get,iam.roles.list
No puedes usar caracteres comodín (*
) en los nombres de permisos.launch-stage
indica la etapa en la que se encuentra una función en el ciclo de vida de lanzamiento, comoALPHA
,BETA
oGA
.
Ejemplos
En el siguiente ejemplo, se muestra cómo crear una función a nivel de la organización mediante marcas:
gcloud iam roles create myCompanyAdmin --organization=123456789012\ --title="My Company Admin" --description="My custom role description." \ --permissions="iam.roles.get,iam.roles.list" --stage=ALPHA
Si la función se creó con éxito, el resultado del comando es similar al siguiente:
Created role [myCompanyAdmin]. description: My custom role description. etag: BwVkBX0sQD0= includedPermissions: - iam.roles.get - iam.roles.list name: organizations/123456789012/roles/myCompanyAdmin stage: ALPHA title: My Company Admin
En el siguiente ejemplo, se muestra cómo crear una función a nivel del proyecto mediante marcas:
gcloud iam roles create myCompanyAdmin --project=my-project-id \ --title="My Company Admin" --description="My custom role description." \ --permissions="iam.roles.get,iam.roles.list" --stage=ALPHA
Si la función se creó con éxito, el resultado del comando es similar al siguiente:
Created role [myCompanyAdmin]. description: My custom role description. etag: BwVkBX0sQD0= includedPermissions: - iam.roles.get - iam.roles.list name: projects/my-project-id/roles/myCompanyAdmin stage: ALPHA title: My Company Admin
REST
El método roles.create
permite crear una función personalizada en un proyecto o una organización.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
resource-type
: Es el tipo de recurso cuyas funciones personalizadas quieres administrar. Usa el valorprojects
oorganizations
.resource-id
: es el ID del proyecto o de la organización cuyas funciones personalizadas deseas administrar. Los ID de proyecto son strings alfanuméricas, comomy-project
. Los ID de la organización son numéricos, como123456789012
.role-id
: Es el nombre de la función, comomyCompanyAdmin
.role-title
: Es el título legible para la función. Por ejemplo,My Company Admin
.role-description
: Es una descripción para la función. Por ejemplo,"The company admin role allows company admins to access important resources"
.-
permission-1
ypermission-2
: Son los permisos que deseas incluir en la función. Por ejemplo,storage.objects.update
. No puedes usar caracteres comodín (*
) en los nombres de permisos.Una función personalizada solo puede contener permisos que se admiten en las funciones personalizadas. Si la función personalizada contiene otros permisos, la solicitud falla.
launch-stage
: Es la etapa de lanzamiento actual de la función. Este campo puede contener uno de los siguientes valores:EAP
,ALPHA
,BETA
,GA
,DEPRECATED
oDISABLED
.
Método HTTP y URL:
POST https://iam.googleapis.com/v1/resource-type/resource-id/roles
Cuerpo JSON de la solicitud:
{ "roleId": "role-id", "role": { "title": "role-title", "description": "role-description", "includedPermissions": [ "permission-1", "permission-2" ], "stage": "launch-stage" } }
Para enviar tu solicitud, expande una de estas opciones:
La respuesta contiene la función que creaste.
{ "name": "projects/myProject/roles/myCompanyAdmin", "title": "My Company Admin", "description": "My custom role description.", "includedPermissions": [ "iam.roles.get", "iam.roles.list" ], "etag": "BwWox/JbaZw=" }
C++
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para C++.
C#
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para C#.
Go
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para Go.
Python
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para Python.
Edita una función personalizada existente
Un patrón común para actualizar los metadatos de un recurso, como una función personalizada, es el patrón lectura-modificación-escritura. Con este patrón, se lee el estado actual de la función, se actualizan los datos de forma local y, luego, se envían los datos modificados para que se escriban.
El patrón lectura-modificación-escritura puede causar un conflicto si dos o más procesos independientes intentan la secuencia en simultáneo. Por ejemplo, si dos propietarios de un proyecto intentan realizar cambios conflictivos en una función al mismo tiempo, algunos cambios podrían fallar. IAM resuelve este problema mediante una propiedad etag
en las funciones personalizadas. Esta propiedad se usa para verificar si la función personalizada cambió desde la última solicitud. Cuando realizas una solicitud a IAM con un valor ETag, IAM compara ese valor en la solicitud con el valor ETag existente asociado con la función personalizada. Solo escribe el cambio si los valores ETag coinciden.
Cuando actualices una función, primero debes obtenerla con roles.get()
, actualizarla y, luego, escribir la función actualizada con roles.patch()
. Usa el valor de Etag cuando establezcas la función solo si la función correspondiente en roles.get()
contiene un valor de Etag.
Console
En la consola, ve a la página Roles.
En la lista desplegable de la parte superior de la página, selecciona el proyecto o la organización que contiene la función que deseas editar.
Haz clic en una función personalizada.
Haz clic en Editar función.
Para actualizar los metadatos de la función, edita el Título, la Descripción o la Etapa de lanzamiento de la función de la función.
Para actualizar los permisos de la función, haz lo siguiente:
- Haz clic en Agregar permisos para agregar permisos nuevos a la función.
- Desmarca permisos para quitarlos de la función.
Haz clic en Actualizar para guardar la función editada.
gcloud
Usa el comando gcloud iam roles update
para actualizar las funciones personalizadas. Puedes usar este comando de las dos maneras que se mencionan a continuación:
- Con un archivo YAML que contiene la definición de la función actualizada
- Con marcas para especificar la definición de la función actualizada
Cuando actualices una función personalizada, debes especificar si se aplica a nivel de la organización o a nivel del proyecto mediante las marcas --organization=organization-id
o --project=project-id
. En cada uno de los siguientes ejemplos, se crea una función personalizada a nivel del proyecto.
Para actualizar una función personalizada con un archivo YAML, haz lo siguiente:
Ejecuta uno de los siguientes comandos para obtener la definición actual de la función:
Para obtener la definición de una función personalizada a nivel de la organización, ejecuta el siguiente comando:
gcloud iam roles describe role-id --organization=organization-id
Para obtener la definición de función de una función personalizada a nivel de proyecto, ejecuta el siguiente comando:
gcloud iam roles describe role-id --project=project-id
Cada valor de marcador de posición se describe a continuación:
role-id
es el nombre de la función que quieres actualizar, comomyCompanyAdmin
.organization-id
es el ID numérico de la organización, como123456789012
.project-id
es el nombre del proyecto, comomy-project-id
.
El comando describe
muestra la definición de la función y, además, incluye un valor de etag
que identifica de forma única la versión actual de la función. El valor de etag
debe proporcionarse en la definición de la función actualizada para garantizar que no se reemplace ningún cambio de función simultáneo.
El comando describe
muestra el siguiente resultado:
description: role-description etag: etag-value includedPermissions: - permission-1 - permission-2 name: full-role-id stage: launch-stage title: role-title
Cada valor de marcador de posición se describe a continuación:
role-description
es una descripción breve de la función, como"My custom role description"
.etag-value
es el identificador único de la versión actual de la función, comoBwVkBkbfr70=
.permission-1
ypermission-2
son permisos para incluir en la función personalizada, comoiam.roles.get
. No puedes usar caracteres comodín (*
) en los nombres de permisos.full-role-id
es el ID de función completo, incluidos los prefijosorganizations/
,projects/
oroles/
. Por ejemplo:organizations/123456789012/roles/myCompanyAdmin.
.launch-stage
indica la etapa en la que se encuentra una función en el ciclo de vida de lanzamiento, comoALPHA
,BETA
oGA
.role-title
es un título descriptivo para la función, como"My Company Admin"
.
Para actualizar la función, incluye la definición de función de salida en un archivo YAML o actualiza el archivo original YAML con el valor de salida de etag
.
Considera el siguiente archivo YAML de ejemplo, que contiene la salida del comando describe
para una función a nivel del proyecto y agrega dos permisos de Cloud Storage:
description: My custom role description. etag: BwVkBkbfr70= includedPermissions: - iam.roles.get - iam.roles.list - storage.buckets.get - storage.buckets.list name: projects/my-project-id/roles/myCompanyAdmin stage: ALPHA title: My Company Admin
Guarda el archivo YAML y, luego, ejecuta uno de los siguientes comandos:
Para actualizar una función a nivel de la organización, ejecuta el siguiente comando:
gcloud iam roles update role-id --organization=organization-id \ --file=yaml-file-path
Para actualizar una función a nivel de proyecto, ejecuta el siguiente comando:
gcloud iam roles update role-id --project=project-id \ --file=yaml-file-path
Cada valor de marcador de posición se describe a continuación:
role-id
es el nombre de la función que quieres actualizar, comomyCompanyAdmin
.organization-id
es el ID numérico de la organización, como123456789012
.project-id
es el nombre del proyecto, comomy-project-id
.yaml-file-path
es la ruta de acceso a la ubicación de tu archivo YAML que contiene la definición de la función personalizada actualizada.
Ejemplos
En el siguiente ejemplo, se muestra cómo actualizar una función a nivel de la organización mediante un archivo YAML:
gcloud iam roles update myCompanyAdmin --organization=123456789012 \ --file=my-role-definition.yaml
Si la función se actualizó con éxito, el resultado del comando es similar al siguiente:
description: My custom role description. etag: BwVkBwDN0lg= includedPermissions: - iam.roles.get - iam.roles.list - storage.buckets.get - storage.buckets.list name: organizations/123456789012/roles/myCompanyAdmin stage: ALPHA title: My Company Admin
En el siguiente ejemplo, se muestra cómo actualizar una función a nivel de proyecto mediante un archivo YAML:
gcloud iam roles update myCompanyAdmin --project=my-project-id \ --file=my-role-definition.yaml
Si la función se actualizó con éxito, el resultado del comando es similar al siguiente:
description: My custom role description. etag: BwVkBwDN0lg= includedPermissions: - iam.roles.get - iam.roles.list - storage.buckets.get - storage.buckets.list name: projects/my-project-id/roles/myCompanyAdmin stage: ALPHA title: My Company Admin
Para actualizar una función personalizada mediante marcas, haz lo siguiente:
Cada parte de la definición de una función se puede actualizar mediante la marca correspondiente.
Consulta el tema gcloud iam roles update
para obtener una lista de todas las marcas posibles.
Puedes usar las siguientes marcas para agregar o quitar permisos:
--add-permissions=permissions
: Agrega a la función uno o más permisos separados por comas. No puedes usar caracteres comodín (*
) en los nombres de permisos.--remove-permissions=permissions
: Quita de la función uno o más permisos separados por comas. No puedes usar caracteres comodín (*
) en los nombres de permisos.
De manera alternativa, puedes especificar los permisos nuevos mediante la marca --permissions=permissions
y proporcionar una lista de permisos separados por comas para reemplazar la lista existente.
Para actualizar otras partes de la definición de la función, ejecuta uno de los siguientes comandos:
Para actualizar una función a nivel de la organización, ejecuta el siguiente comando:
gcloud iam roles update role-id --organization=organization-id \ --title=role-title --description=role-description \ --stage=launch-stage
Para actualizar una función a nivel de proyecto, ejecuta el siguiente comando:
gcloud iam roles update role-id --project=project-id \ --title=role-title --description=role-description \ --stage=launch-stage
Cada valor de marcador de posición se describe a continuación:
role-id
es el nombre de la función, comomyCompanyAdmin
.organization-id
es el ID numérico de la organización, como123456789012
.project-id
es el nombre del proyecto, comomy-project-id
.role-title
es un título descriptivo para la función, como"My Company Admin"
.role-description
es una descripción breve de la función, como"My custom role description."
.launch-stage
indica la etapa en la que se encuentra una función en el ciclo de vida de lanzamiento, comoALPHA
,BETA
oGA
.
Ejemplos
En el siguiente ejemplo, se muestra cómo agregar permisos a una función a nivel de la organización mediante marcas:
gcloud iam roles update myCompanyAdmin --organization=123456789012 \ --add-permissions="storage.buckets.get,storage.buckets.list"
Si la función se actualizó con éxito, el resultado del comando es similar al siguiente:
description: My custom role description. etag: BwVkBwDN0lg= includedPermissions: - iam.roles.get - iam.roles.list - storage.buckets.get - storage.buckets.list name: organization/123456789012/roles/myCompanyAdmin stage: ALPHA title: My Company Admin
En el siguiente ejemplo, se muestra cómo agregar permisos a una función a nivel de proyecto mediante marcas:
gcloud iam roles update myCompanyAdmin --project=my-project-id \ --add-permissions="storage.buckets.get,storage.buckets.list"
Si la función se actualizó con éxito, el resultado del comando es similar al siguiente:
description: My custom role description. etag: BwVkBwDN0lg= includedPermissions: - iam.roles.get - iam.roles.list - storage.buckets.get - storage.buckets.list name: projects/my-project-id/roles/myCompanyAdmin stage: ALPHA title: My Company Admin
REST
El método roles.patch
permite actualizar una función personalizada en un proyecto o una organización.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
Obligatorio:
resource-type
: Es el tipo de recurso cuyas funciones personalizadas quieres administrar. Usa el valorprojects
oorganizations
.resource-id
: es el ID del proyecto o de la organización cuyas funciones personalizadas deseas administrar. Los ID de proyecto son strings alfanuméricas, comomy-project
. Los ID de la organización son numéricos, como123456789012
.-
full-role-id
: Es el ID de función completo, incluidos los prefijosorganizations/
,projects/
oroles/
. Por ejemplo,organizations/123456789012/roles/myCompanyAdmin
.
Recomendados:
etag
: Es un identificador para una versión de la función. Incluye este campo para evitar reemplazar otros cambios de funciones.
Opcional (define uno o más de los siguientes valores):
role-title
: Es el título legible para la función. Por ejemplo,My Company Admin
.role-description
: Es una descripción para la función. Por ejemplo,"The company admin role allows company admins to access important resources"
.permission-1
ypermission-2
: Son los permisos que deseas incluir en la función. Por ejemplo,storage.objects.update
. No puedes usar caracteres comodín (*
) en los nombres de permisos.launch-stage
: Es la etapa de lanzamiento actual de la función. Este campo puede contener uno de los siguientes valores:EAP
,ALPHA
,BETA
,GA
,DEPRECATED
oDISABLED
.
Método HTTP y URL:
PATCH https://iam.googleapis.com/v1/resource-type/resource-id/roles
Cuerpo JSON de la solicitud:
{ "roleId": "full-role-id", "title": "role-title", "description": "role-description", "includedPermissions": [ "permission-1", "permission-2" ], "stage": "launch-stage", "etag": "etag" }
Para enviar tu solicitud, expande una de estas opciones:
La respuesta contiene una definición de función abreviada que incluye el nombre de la función, los campos que actualizaste y un ETag que identifica la versión actual de la función.
{ "name": "projects/test-project-1000092/roles/myCompanyAdmin", "title": "My Updated Company Admin", "includedPermissions": [ "storage.buckets.get", "storage.buckets.list" ], "stage": "BETA", "etag": "BwWoyDpAxBc=" }
C++
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para C++.
C#
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para C#.
Go
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para Go.
Python
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para Python.
Inhabilita una función personalizada
Para inhabilitar una función personalizada, cambia su etapa de lanzamiento a DISABLED
. Cuando un rol está inhabilitado, todas las vinculaciones de roles relacionadas con él se desactivan, lo que significa que otorgar este rol a un usuario no tendrá efecto alguno.
Console
En la consola, ve a la página Roles.
Haz clic en la lista desplegable "Seleccionar un proyecto" en la parte superior de la página.
Selecciona tu organización o proyecto.
Selecciona una función personalizada y haz clic en Inhabilitar.
gcloud
Si quieres usar el comando gcloud iam roles update
para inhabilitar una función personalizada, establece su etapa de lanzamiento en DISABLED
.
Como se describe en la pestaña gcloud de la sección Edita una función personalizada existente, puedes actualizar una función personalizada existente mediante los siguientes dos métodos:
- Con un archivo YAML que contiene la definición de la función actualizada
- Con marcas para especificar la definición de la función actualizada
La forma más fácil de inhabilitar una función personalizada existente es usar la marca --stage
y establecerla en DISABLED
. Ejecuta uno de los siguientes comandos:
Para inhabilitar una función a nivel de la organización, ejecuta el siguiente comando:
gcloud iam roles update role-id --organization=organization-id \ --stage=DISABLED
Para inhabilitar una función a nivel de proyecto, ejecuta el siguiente comando:
gcloud iam roles update role-id --project=project-id \ --stage=DISABLED
Cada valor de marcador de posición se describe a continuación:
role-id
es el nombre de la función, comomyCompanyAdmin
.organization-id
es el ID numérico de la organización, como123456789012
.project-id
es el nombre del proyecto, comomy-project-id
.
Ejemplos
En el siguiente ejemplo, se muestra cómo inhabilitar una función a nivel de la organización:
gcloud iam roles update myCompanyAdmin --organization=123456789012 \ --stage=DISABLED
Si la función se actualizó con éxito, el resultado del comando es similar al siguiente:
description: My custom role description. etag: BwVkB5NLIQw= includedPermissions: - iam.roles.get - iam.roles.list name: organization/123456789012/roles/myCompanyAdmin stage: DISABLED title: My Company Admin
En el siguiente ejemplo, se muestra cómo inhabilitar una función a nivel del proyecto:
gcloud iam roles update myCompanyAdmin --project=my-project-id \ --stage=DISABLED
Si la función se actualizó con éxito, el resultado del comando es similar al siguiente:
description: My custom role description. etag: BwVkB5NLIQw= includedPermissions: - iam.roles.get - iam.roles.list name: projects/my-project-id/roles/myCompanyAdmin stage: DISABLED title: My Company Admin
REST
El método roles.patch
permite cambiar la etapa de lanzamiento de una función personalizada a DISABLED
para inhabilitarla.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
resource-type
: Es el tipo de recurso cuyas funciones personalizadas quieres administrar. Usa el valorprojects
oorganizations
.resource-id
: es el ID del proyecto o de la organización cuyas funciones personalizadas deseas administrar. Los ID de proyecto son strings alfanuméricas, comomy-project
. Los ID de la organización son numéricos, como123456789012
.-
full-role-id
: Es el ID de función completo, incluidos los prefijosorganizations/
,projects/
oroles/
. Por ejemplo,organizations/123456789012/roles/myCompanyAdmin
. etag
: Es un identificador para una versión de la función. Incluye este campo para evitar reemplazar otros cambios de funciones.
Método HTTP y URL:
PATCH https://iam.googleapis.com/v1/resource/resource-id/roles
Cuerpo JSON de la solicitud:
{ "roleId": "full-role-id", "stage": DISABLED, "etag": "etag" }
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "name": "projects/test-project-1000092/roles/myCompanyAdmin", "stage": "DISABLED", "etag": "BwWoyDpAxBc=" }
C++
Actualiza el campo stage
de la función a DISABLED
.
C#
Actualiza el campo stage
de la función a DISABLED
.
Go
Actualiza el campo stage
de la función a DISABLED
.
Python
Actualiza el campo stage
de la función a DISABLED
.
Enumera las funciones
Puedes enumerar todas las funciones personalizadas creadas en tu organización o proyecto.
Console
En la consola, ve a la página Roles.
Todas las funciones personalizadas para la organización o el proyecto que seleccionaste se enumeran en la página.
gcloud
Usa el comando gcloud iam roles list
a fin de enumerar las funciones personalizadas y predefinidas de una organización o un proyecto.
Para enumerar las funciones personalizadas a nivel de la organización, ejecuta el siguiente comando:
gcloud iam roles list --organization=organization-id
Para enumerar las funciones personalizadas a nivel de proyecto, ejecuta el siguiente comando:
gcloud iam roles list --project=project-id
Cada valor de marcador de posición se describe a continuación:
organization-id
es el ID numérico de la organización, como123456789012
.project-id
es el nombre del proyecto, comomy-project-id
.
Para enumerar las funciones que se borraron, también puedes especificar la marca --show-deleted
.
Ejecuta el siguiente comando para enumerar las funciones predefinidas:
gcloud iam roles list
REST
El método roles.list
permite enumerar todas las funciones personalizadas de un proyecto o una organización.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
resource-type
: Es el tipo de recurso cuyas funciones personalizadas quieres administrar. Usa el valorprojects
oorganizations
.resource-id
: es el ID del proyecto o de la organización cuyas funciones personalizadas deseas administrar. Los ID de proyecto son strings alfanuméricas, comomy-project
. Los ID de la organización son numéricos, como123456789012
.role-view
: Opcional Es la información que se debe incluir para las funciones que se muestran. Para incluir los permisos de las funciones, establece este campo enFULL
. Para excluir los permisos de las funciones, establece este campo enBASIC
. El valor predeterminado esBASIC
.page-size
: Opcional. Es la cantidad de funciones que se deben incluir en la respuesta. El valor predeterminado es 300 y el valor máximo es 1,000. Si la cantidad de funciones es mayor que el tamaño de la página, la respuesta contiene un token de paginación que puedes usar para consultar la siguiente página de resultados.next-page-token
: Opcional. Es el token de paginación que se mostró en una respuesta anterior de este método. Si se especifica, la lista de funciones comenzará desde el punto en que finalizó la solicitud anterior.
Método HTTP y URL:
GET https://iam.googleapis.com/v1/resource-type/resource-id/roles?view=role-view&pageSize=page-size&pageToken=next-page-token
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "roles": [ { "name": "projects/my-project/roles/customRole1", "title": "First Custom Role", "description": "Created on: 2020-06-01", "etag": "BwWiPg2fmDE=" }, { "name": "projects/my-project/roles/customRole2", "title": "Second Custom Role", "description": "Created on: 2020-06-07", "etag": "BwWiuX53Wi0=" } ] }
C++
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para C++.
C#
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para C#.
Go
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para Go.
Python
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para Python.
Borra una función personalizada
Puedes borrar cualquier función personalizada en tu organización o proyecto.
Console
En la consola, ve a la página Roles.
Selecciona la función que deseas borrar y haz clic en delete Borrar en la parte superior de la página.
gcloud
Usa el comando gcloud iam roles delete
para borrar una función personalizada.
Para borrar una función personalizada a nivel de la organización, ejecuta el siguiente comando:
gcloud iam roles delete role-id --organization=organization-id
Para borrar una función personalizada a nivel de proyecto, ejecuta el siguiente comando:
gcloud iam roles delete role-id --project=project-id
Cada valor de marcador de posición se describe a continuación:
role-id
es el nombre de la función, comomyCompanyAdmin
.organization-id
es el ID numérico de la organización, como123456789012
.project-id
es el nombre del proyecto, comomy-project-id
.
La función no se incluirá en la gcloud iam roles list
, a menos que se incluya la marca --show-deleted
. Las funciones que se borraron se indican mediante el bloque deleted: true
en una respuesta de la list
, como la que se muestra a continuación:
--- deleted: true description: My custom role description. etag: BwVkB5NLIQw= name: projects/my-project-id/roles/myCompanyAdmin title: My Company Admin ---
REST
El método roles.delete
permite borrar una función personalizada en un proyecto o una organización.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
-
full-role-id
: Es el ID de función completo, incluidos los prefijosorganizations/
,projects/
oroles/
. Por ejemplo,organizations/123456789012/roles/myCompanyAdmin
.
Método HTTP y URL:
DELETE https://iam.googleapis.com/v1/full-role-id
Para enviar tu solicitud, expande una de estas opciones:
La respuesta contiene la definición de la función que se borró.
{ "name": "projects/my-project/roles/myCompanyAdmin", "title": "My Company Admin", "description": "My custom role description.", "includedPermissions": [ "iam.roles.get", "iam.roles.list" ], "etag": "BwWiPg2fmDE=", "deleted": true }
C++
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para C++.
C#
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para C#.
Go
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para Go.
Python
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para Python.
Cuando se borra un rol, todas las vinculaciones de roles que hagan referencia a él permanecen en las políticas de permisos, pero no tienen efecto. Puedes recuperar un rol en un plazo de 7 días. Durante ese período de 7 días, la consola muestra que se borró el rol. También puedes enumerar los roles que se borraron de manera programática, pero se omiten de forma predeterminada.
Después de 7 a 14 días, la función está programada para borrarse de forma definitiva. En este punto, la función ya no se tiene en cuenta para el límite de 300 funciones personalizadas por organización o 300 funciones personalizadas por proyecto.
El proceso de eliminación permanente demora 30 días. Durante el período de 30 días, la función y todos los enlaces asociados se quitan de forma permanente, y no puedes crear una función nueva con el mismo ID de función.
Una vez que la función se haya borrado de forma definitiva, hasta 44 días después de la solicitud de eliminación inicial, puedes crear una función nueva con el mismo ID de función.
Recupera una función personalizada
Cuando recuperas una función, esta vuelve a su estado anterior.
Las funciones solo se pueden recuperar en un plazo de 7 días. Después de 7 días, la función se puede borrar de forma definitiva en cualquier momento, y se quitan todas las vinculaciones de funciones que hacen referencia a la función.
Console
En la consola, ve a la página Roles.
Encuentra la función que deseas recuperar, haz clic en el ícono más al final de la fila y luego en Recuperar.
gcloud
Usa el comando gcloud iam roles undelete
para recuperar una función personalizada.
Para recuperar una función personalizada a nivel de la organización, ejecuta el siguiente comando:
gcloud iam roles undelete role-id --organization=organization-id
Para recuperar una función personalizada a nivel de proyecto, ejecuta el siguiente comando:
gcloud iam roles undelete role-id --project=project-id
Cada valor de marcador de posición se describe a continuación:
role-id
es el nombre de la función, comomyCompanyAdmin
.organization-id
es el ID numérico de la organización, como123456789012
.project-id
es el nombre del proyecto, comomy-project-id
.
Ejemplos
En el siguiente ejemplo, se muestra cómo recuperar una función personalizada a nivel de la organización:
gcloud iam roles undelete myCompanyAdmin --organization=123456789012
Si la función se recuperó con éxito, el resultado del comando es similar al siguiente:
description: My custom role description. etag: BwVkCAx9W6w= includedPermissions: - iam.roles.get - iam.roles.list name: organization/123456789012/roles/myCompanyAdmin stage: ALPHA title: My Company Admin
En el siguiente ejemplo, se muestra cómo recuperar una función personalizada a nivel del proyecto:
gcloud iam roles undelete myCompanyAdmin --project=my-project-id
Si la función se recuperó con éxito, el resultado del comando es similar al siguiente:
description: My custom role description. etag: BwVkCAx9W6w= includedPermissions: - iam.roles.get - iam.roles.list name: projects/my-project-id/roles/myCompanyAdmin stage: ALPHA title: My Company Admin
REST
El método roles.undelete
permite recuperar una función personalizada en un proyecto o una organización.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
-
full-role-id
: Es el ID de función completo, incluidos los prefijosorganizations/
,projects/
oroles/
. Por ejemplo,organizations/123456789012/roles/myCompanyAdmin
. etag
: Es un identificador para una versión de la función. Incluye este campo para evitar reemplazar otros cambios de funciones.
Método HTTP y URL:
POST https://iam.googleapis.com/v1/full-role-id:undelete
Cuerpo JSON de la solicitud:
{ "etag": "etag" }
Para enviar tu solicitud, expande una de estas opciones:
La respuesta contiene la definición de la función que se recuperó.
{ "name": "projects/my-project/roles/myCompanyAdmin", "title": "My Company Admin", "description": "My custom role description.", "includedPermissions": [ "iam.roles.get", "iam.roles.list" ], "etag": "BwWiPg2fmDE=" }
C++
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para C++.
C#
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para C#.
Go
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para Go.
Python
Para obtener más obtener información sobre cómo instalar y usar la biblioteca cliente de IAM, consulta Bibliotecas cliente de IAM. Si deseas obtener más información, consulta la documentación de referencia de la API de IAM para Python.
¿Qué sigue?
- Descubre cómo otorgar funciones a los principales.
- Explora cómo puedes usar las recomendaciones de funciones para reducir los permisos de los principales.
- Obtén información sobre los otorgamientos de funciones condicionales, que otorgan una función solo si se cumplen condiciones específicas.