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.

Roles predefinidos

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

Rol Título Descripción Permisos
roles/pubsublite.admin Administrador de Pub/Sub Lite Tiene acceso completo a los temas y suscripciones de Lite. pubsublite.*
roles/pubsublite.editor Editor de Pub/Sub Lite Puedes modificar los temas y las suscripciones de Lite, publicar mensajes en los temas y recibir mensajes de las suscripciones de Lite. pubsublite.*
roles/pubsublite.publisher Publicador de Pub/Sub Lite Publica mensajes en temas de 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 Consulta los temas y las suscripciones a 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

    Roles personalizados

    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 funciones personalizadas, consulta Crea y administra funciones personalizadas.

    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 otorgarle a una cuenta de servicio acceso para ver cualquier tema de Lite en un proyecto, pero no puedes darle acceso para ver un solo tema de Lite.

    Para otorgar un rol en un proyecto, puedes usar la consola de Google Cloud o 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. Haz clic en Guardar.

    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 detalles, consulta Cómo controlar el acceso de manera programática.

    ¿Qué sigue?