Funciones y permisos

Google Cloud ofrece la administración de identidades y accesos (IAM), que te permite brindar acceso más detallado a recursosGoogle Cloud específicos y evita el acceso no deseado a otros recursos. En esta página, se describen los roles de la API de Service Directory. Para ver una descripción detallada de IAM, lee la documentación de IAM.

IAM te permite adoptar el principio de seguridad de menor privilegio, de manera que solo otorgas el acceso necesario a tus recursos.

IAM te permite controlar quién tiene qué permisos para cuáles recursos mediante la configuración de políticas de IAM. Las políticas de IAM asignan roles específicos a un usuario, lo que le otorga ciertos permisos.

Permisos y funciones

Cada método de la API de Service Directory requiere que el emisor tenga los permisos de IAM necesarios. Puedes asignar permisos asignándole roles a un usuario, a un grupo o a una cuenta de servicio. Además de los roles básicos de propietario, editor y visualizador, puedes otorgar roles de la API de Service Directory a los usuarios de tu proyecto.

Permisos

Puedes averiguar qué permisos son necesarios para cada método en la documentación de referencia de la API de Service Directory.

Funciones

Role Permissions

(roles/servicedirectory.admin)

Full control of all Service Directory resources and permissions.

resourcemanager.projects.get

resourcemanager.projects.list

servicedirectory.endpoints.*

  • servicedirectory.endpoints.create
  • servicedirectory.endpoints.delete
  • servicedirectory.endpoints.get
  • servicedirectory.endpoints.getIamPolicy
  • servicedirectory.endpoints.list
  • servicedirectory.endpoints.setIamPolicy
  • servicedirectory.endpoints.update

servicedirectory.locations.*

  • servicedirectory.locations.get
  • servicedirectory.locations.list

servicedirectory.namespaces.*

  • servicedirectory.namespaces.associatePrivateZone
  • servicedirectory.namespaces.create
  • servicedirectory.namespaces.delete
  • servicedirectory.namespaces.get
  • servicedirectory.namespaces.getIamPolicy
  • servicedirectory.namespaces.list
  • servicedirectory.namespaces.setIamPolicy
  • servicedirectory.namespaces.update

servicedirectory.networks.attach

servicedirectory.services.*

  • servicedirectory.services.bind
  • servicedirectory.services.create
  • servicedirectory.services.delete
  • servicedirectory.services.get
  • servicedirectory.services.getIamPolicy
  • servicedirectory.services.list
  • servicedirectory.services.resolve
  • servicedirectory.services.setIamPolicy
  • servicedirectory.services.update

(roles/servicedirectory.editor)

Edit Service Directory resources.

resourcemanager.projects.get

resourcemanager.projects.list

servicedirectory.endpoints.create

servicedirectory.endpoints.delete

servicedirectory.endpoints.get

servicedirectory.endpoints.getIamPolicy

servicedirectory.endpoints.list

servicedirectory.endpoints.update

servicedirectory.locations.*

  • servicedirectory.locations.get
  • servicedirectory.locations.list

servicedirectory.namespaces.associatePrivateZone

servicedirectory.namespaces.create

servicedirectory.namespaces.delete

servicedirectory.namespaces.get

servicedirectory.namespaces.getIamPolicy

servicedirectory.namespaces.list

servicedirectory.namespaces.update

servicedirectory.networks.attach

servicedirectory.services.bind

servicedirectory.services.create

servicedirectory.services.delete

servicedirectory.services.get

servicedirectory.services.getIamPolicy

servicedirectory.services.list

servicedirectory.services.resolve

servicedirectory.services.update

(roles/servicedirectory.networkAttacher)

Gives access to attach VPC Networks to Service Directory Endpoints

resourcemanager.projects.get

resourcemanager.projects.list

servicedirectory.networks.attach

(roles/servicedirectory.pscAuthorizedService)

Gives access to VPC Networks via Service Directory

resourcemanager.projects.get

resourcemanager.projects.list

servicedirectory.networks.access

(roles/servicedirectory.viewer)

View Service Directory resources.

resourcemanager.projects.get

resourcemanager.projects.list

servicedirectory.endpoints.get

servicedirectory.endpoints.getIamPolicy

servicedirectory.endpoints.list

servicedirectory.locations.*

  • servicedirectory.locations.get
  • servicedirectory.locations.list

servicedirectory.namespaces.get

servicedirectory.namespaces.getIamPolicy

servicedirectory.namespaces.list

servicedirectory.services.get

servicedirectory.services.getIamPolicy

servicedirectory.services.list

servicedirectory.services.resolve

Control de acceso con la consola de Google Cloud

Puedes usar la consola de Google Cloud para administrar el control de acceso de tu registro.

Para configurar los controles de acceso a nivel de proyecto, sigue estos pasos:

Console

  1. En la consola de Google Cloud, ve a la página IAM.

    Ir a IAM

  2. Selecciona tu proyecto en el menú desplegable superior.

  3. Haga clic en Agregar.

  4. En Principales nuevas, ingresa la dirección de correo electrónico de un principal nuevo.

  5. Selecciona el rol deseado en el menú desplegable: servicedirectory.admin, servicedirectory.editor o servicedirectory.viewer.

  6. Haz clic en Guardar.

  7. Verifica que la principalaparezca en la lista con la función que le otorgaste.

Las zonas del Directorio de servicios anula las restricciones de IAM

Cuando asignas un espacio de nombres a una zona del Directorio de servicios, los nombres de los servicios se vuelven visibles para todos los clientes de las redes que estén autorizadas para consultar la zona privada. No hay control de acceso de IAM para DNS, ya que el protocolo DNS no proporciona capacidades de autenticación.

¿Qué sigue?