En esta página, se muestra cómo administrar unidades de usuario para tu servicio. Una unidad de usuario es un recurso básico que representa la relación entre un consumidor de servicios y un servicio administrado. Cada consumidor de servicios puede tener solamente una unidad de inquilino activa para un servicio administrado. Esta es una característica que proporciona Service Infrastructure.
El nombre del recurso de una unidad de usuario tiene el siguiente formato:
services/{your service name}/projects/{consumer project number}/tenancyUnits/{id}
El ID de una unidad de usuario se genera automáticamente cuando la creas. También puedes proporcionar el ID cuando llamas al método services.tenancyUnits.create
. Si proporcionas un ID, este debe ser único a nivel global dentro del alcance de tu servicio administrado para todos los consumidores de servicios.
En los ejemplos de esta página, se usan llamadas directas a la API de REST de la Administración de consumidores de servicios. Para el uso en producción, te recomendamos que uses las bibliotecas cliente que proporciona Google a fin de obtener una mejor usabilidad y confiabilidad.
Antes de comenzar
- La API de Administración de consumidores de servicios está diseñada para utilizarse con servicios administrados y proyectos del productor de servicios. Deberás tener un proyecto de Google Cloud y un servicio administrado (como un servicio creado conCloud Endpoints) en ese proyecto.
- Para utilizar las unidades de inquilino, la API de Service Consumer Management debe crear proyectos de inquilino en la organización del productor de servicios. Asegúrate de tener suficiente cuota para la cantidad necesaria de proyectos de usuarios para los consumidores de tu servicio.
- Para crear y borrar unidades de inquilino, sigue las instrucciones de configuración iniciales en Comienza a usar la API de Service Consumer Management.
- Cada proyecto de usuario creado en una unidad de usuario también debe estar en una carpeta que especifiques como parte de la configuración del proyecto de usuario. Debido a esto, necesitas contar con una Organización para utilizar las unidades de usuario.
Autenticación
Select the tabs for how you plan to access the API:
gcloud
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Bibliotecas cliente
Para usar bibliotecas cliente en un entorno de desarrollo local, instala e inicializa gcloud CLI y, luego, configura las credenciales predeterminadas de la aplicación con tus credenciales de usuario.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
Si deseas obtener más información, consulta Configura ADC para un entorno de desarrollo local en la documentación de autenticación de Google Cloud .
REST
Para usar la API de REST en un entorno de desarrollo local, debes usar las credenciales que proporcionas a gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Para obtener más información, consulta Autentica para usar REST en la documentación de autenticación de Google Cloud .
Si quieres obtener información sobre cómo configurar la autenticación para un entorno de producción, consulta Set up Application Default Credentials for code running on Google Cloud en la Google Cloud documentación de autenticación.
Crea una unidad de inquilino
Por lo general, se crean unidades de usuario y los proyectos de usuarios cuando se crean recursos en tu propio servicio que dependen de recursos adicionales de Google Cloud para que los aprovisionen para los clientes.
Una unidad de inquilino se crea de la siguiente manera:
POST https://serviceconsumermanagement.googleapis.com/v1/services/service.example.com/projects/12345678901/tenancyUnits
Aquí, “projects/12345678901” representa el consumidor del servicio y service.example.com
es el nombre de tu servicio.
La estructura de datos que se muestra tiene el nombre de la unidad de inquilino con un ID único que puede utilizarse para el acceso. En este ejemplo, el nombre generado es services/your-service.example.com/projects/12345678901/tenancyUnits/absdef
.
Agrega un proyecto de inquilino
Ahora puedes agregar un proyecto para el usuario. Para agregar un proyecto de inquilino nuevo a la unidad de inquilino creada en el paso anterior, llama al siguiente método:
POST https://serviceconsumermanagement.googleapis.com/v1/services/your-service.example.com/projects/12345678901/tenancyUnits/absdef:addProject
con los siguientes datos:
{"tag":"tag1", "project_config":{"folder":"folders/9876543210", "tenant_project_policy":{"policy_bindings":{"role":"roles/owner", "members":"user:bob@example.com"}}, "billing_config":{"billing_account":"billingAccounts/123456-472F22-28F9AA"}}}
El valor tag
es un identificador que proporciona para el proyecto dentro de la unidad de usuario: puede ser cualquier cosa que desee (aquí es tag1
), como una región, una red de consumidores o simplemente un ID de cadena.
Esta llamada muestra una operación de larga duración que puedes consultar para encontrar si la creación del proyecto se realizó de forma correcta.
Si necesitas aplicar una configuración diferente, por ejemplo, para agregar servicios administrados nuevos, puedes llamar al método services.tenancyUnits.applyProjectConfig
.
Busca unidades de usuario
Encuentra una unidad de usuario para un consumidor de servicios
A fin de buscar una unidad de usuario para un consumidor de servicios en particular, utilice el método services.tenancyUnits.ListTenancyUnits
y especifique su número de proyecto de consumidor de servicios:
GET https://serviceconsumermanagement.googleapis.com/v1/services/your-service.example.com/projects/12345678901/tenancyUnits
Busca unidades de usuario
Puede usar el método services.tenancyUnits.SearchTenancyUnits
a fin de buscar unidades de usuario definidas para su servicio. Por ejemplo, la siguiente consulta mostrará todas las unidades que contengan un proyecto con la etiqueta 'tag1':
GET https://serviceconsumermanagement.googleapis.com/v1/services/your-service.example.com:search?query=tenant_resources.tag=tag1
Limpia las unidades de usuario
Cuando un consumidor de servicios deja de usar el servicio, debes quitar su unidad de usuario para liberar recursos y garantizar que se borren los datos del usuario.
Quita los proyectos de inquilino
Debes borrar todos los proyectos de usuario antes de borrar la unidad de usuario correspondiente. Debes usar el método services.tenancyUnits.removeProject
para borrar un proyecto de usuario y todos sus recursos:
POST https://serviceconsumermanagement.googleapis.com/v1/services/your-service.example.com/projects/12345678901/tenancyUnits/absdef:removeProject
Borra una unidad de usuario
Después de borrar todos los proyectos de usuario en una unidad de usuario, o todos en el estado DELETED
, puedes borrar la unidad de usuario:
DELETE https://serviceconsumermanagement.googleapis.com/v1/services/your-service.example.com/projects/12345678901/tenancyUnits/absdef
Salvo que se indique lo contrario, el contenido de esta página está sujeto a la licencia Atribución 4.0 de Creative Commons, y los ejemplos de código están sujetos a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2025-02-05 (UTC)