Control de acceso con IAM

En este documento, se describen las opciones de control de acceso para Pub/Sub Lite. Pub/Sub Lite usa la administración de identidades y accesos para el control de acceso.

Para otorgar acceso a un usuario o aplicación a los recursos de Pub/Sub Lite, otorga al menos una función predefinida o personalizada al usuario o a la cuenta de servicio que usa la aplicación. Las funciones incluyen permisos para realizar acciones específicas en recursos de Pub/Sub Lite.

Funciones predefinidas

En la siguiente tabla, se enumeran las funciones predefinidas que te brindan acceso a los recursos de Pub/Sub Lite:

Función Título Descripción Permisos
roles/pubsublite.admin Administrador de Pub/Sub Lite Acceso completo a temas y suscripciones Lite. pubsublite.*
roles/pubsublite.editor Editor de Pub/Sub Lite Modifica los temas y suscripciones Lite, publica y recibe mensajes en temas y suscripciones Lite. pubsublite.*
roles/pubsublite.publisher Publicador de Pub/Sub Lite Publica mensajes en temas Lite.
  • pubsublite.topics.getPartitions
  • pubsublite.topics.publish
  • pubsublite.locations.openKafkaStream
  • roles/pubsublite.subscriber Suscriptor de Pub/Sub Lite Recibe mensajes de suscripciones Lite.
    • pubsublite.operations.get
    • pubsublite.subscriptions.getCursor
    • pubsublite.subscriptions.seek
    • pubsublite.subscriptions.setCursor
    • pubsublite.subscriptions.subscribe
    • pubsublite.topics.computeHeadCursor
    • pubsublite.topics.computeMessageStats
    • pubsublite.topics.computeTimeCursor
    • pubsublite.topics.getPartitions
    • pubsublite.topics.subscribe
    • pubsublite.locations.openKafkaStream
    roles/pubsublite.viewer Visualizador de Pub/Sub Lite Visualiza temas y suscripciones Lite
    • pubsublite.operations.get
    • pubsublite.operations.list
    • pubsublite.subscriptions.get
    • pubsublite.subscriptions.getCursor
    • pubsublite.subscriptions.list
    • pubsublite.topics.get
    • pubsublite.topics.getPartitions
    • pubsublite.topics.list
    • pubsublite.topics.listSubscriptions

    Funciones personalizadas

    Las funciones personalizadas pueden incluir cualquier permiso que especifiques. Puedes crear funciones personalizadas que incluyan permisos para realizar operaciones administrativas específicas, como actualizar temas de Lite o borrar suscripciones de Lite. Para crear una configuración consulta Crear y administrar roles roles.

    En la siguiente tabla, se enumeran ejemplos de funciones personalizadas:

    Descripción Permisos
    Crea y administra reservas de Lite.
    • pubsublite.reservations.create
    • pubsublite.reservations.update
    • pubsublite.reservations.get
    • pubsublite.reservations.list
    • pubsublite.reservations.delete
    Crea y administra temas Lite.
    • pubsublite.topics.create
    • pubsublite.topics.update
    • pubsublite.topics.get
    • pubsublite.topics.getPartitions
    • pubsublite.topics.list
    • pubsublite.topics.listSubscriptions
    • pubsublite.topics.delete
    Crea y administra suscripciones Lite.
    • pubsublite.subscriptions.create
    • pubsublite.topics.subscribe
    • pubsublite.subscriptions.update
    • pubsublite.subscriptions.get
    • pubsublite.subscriptions.list
    • pubsublite.subscriptions.delete
    Crea temas y suscripciones Lite.
    • pubsublite.topics.create
    • pubsublite.subscriptions.create
    • pubsublite.topics.subscribe
    Modifica los temas y las suscripciones Lite.
    • pubsublite.topics.update
    • pubsublite.subscriptions.update
    Borra temas y suscripciones Lite.
    • pubsublite.topics.delete
    • pubsublite.subscriptions.delete

    Otorga funciones

    Puedes otorgar funciones para acceder a los recursos de Pub/Sub Lite a nivel de proyecto. Por ejemplo, puedes otorgar acceso a una cuenta de servicio para que vea cualquier tema de Lite en un proyecto, pero no puedes otorgar acceso a una cuenta de servicio para ver un solo tema de Lite.

    Para otorgar un rol en un proyecto, puedes usar la consola de Google Cloud Google Cloud CLI.

    Console

    Para otorgar una función a un usuario, una cuenta de servicio o cualquier otro miembro, sigue estos pasos:

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

    Ir a IAM

    1. Haga clic en Add.

    2. Ingresa la dirección de correo electrónico de un usuario, cuenta de servicio o algún otro miembro.

    3. Selecciona una función.

    4. Haga clic en Save.

    gcloud

    Para otorgarle una función a un usuario, cuenta de servicio o algún otro miembro, ejecuta el comando gcloud projects add-iam-policy-binding:

    gcloud projects add-iam-policy-binding PROJECT_ID \
    --member=MEMBER \
    --role=ROLE_ID
    

    Reemplaza lo siguiente:

    También puedes obtener un archivo JSON o YAML con la política de IAM actual, agregar varias funciones o miembros al archivo y, luego, actualizar la política. Para leer y administrar la política, usa Google Cloud CLI, la API de IAM, o la IAM. Para obtener más información, consulta Controla el acceso programáticamente.

    ¿Qué sigue?