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 roles personalizados, consulta Crea y administra roles personalizados.

    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 a una cuenta de servicio acceso para ver cualquier tema Lite de un proyecto, pero no puedes permitir que una cuenta de servicio acceda a 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. 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 IAM. Para obtener más detalles, consulta Controla el acceso de manera programática.

    ¿Qué sigue?