A App Optimize API usa o Identity and Access Management (IAM) para controlar o acesso aos recursos, como relatórios e operações. O IAM permite conceder acesso granular a recursos específicos da API App Optimize e ajuda a impedir o acesso indesejado a outros recursos.
Este documento descreve as permissões e os papéis do IAM que se aplicam à API App Optimize.
Visão geral de permissões
Com elas, os usuários podem realizar ações específicas nos recursos da API App Optimize. A tabela a seguir lista as permissões da API App Optimize:
| Permissão | Descrição |
|---|---|
appoptimize.operations.cancel |
Cancelar uma operação de longa duração. |
appoptimize.operations.delete |
Excluir uma operação de longa duração. |
appoptimize.operations.get |
Receber o status de uma operação de longa duração. |
appoptimize.operations.list |
Listar operações de longa duração. |
appoptimize.reports.create |
Criar um recurso de relatório da App Optimize API. |
appoptimize.reports.delete |
Excluir um recurso de relatório da API App Optimize. |
appoptimize.reports.get |
Ler os metadados de configuração de um recurso de relatório da App Optimize API.
Isso não concede acesso aos dados do relatório. |
appoptimize.reports.getData |
Ler os dados contidos em um relatório da API App Optimize. |
appoptimize.reports.list |
Listar recursos de relatório da App Optimize API em um projeto. |
Papéis predefinidos
O IAM fornece papéis predefinidos que concedem um conjunto de permissões relacionadas. Os seguintes papéis estão disponíveis para a App Optimize API:
| Papel | Nome | Descrição |
|---|---|---|
roles/appoptimize.admin |
Administrador do aplicativo Optimize | Controle total sobre os relatórios e operações da API App Optimize. |
roles/appoptimize.viewer |
Leitor do aplicativo Optimize | Acesso de leitura aos metadados, dados de relatórios e operações da App Optimize API. |
Conceder um papel do IAM
É possível conceder um papel do IAM a um principal usando o Google Cloud console ou a Google Cloud CLI.
Console
No Google Cloud console, acesse a página IAM.
Clique em Conceder acesso.
No campo Novos principais, insira o endereço de e-mail do principal a quem o papel será concedido.
Clique no menu suspenso Selecionar um papel.
Filtre os papéis do App Optimize e selecione o papel a ser concedido, como Administrador do App Optimize ou Leitor do App Optimize.
Clique em Salvar.
gcloud
Instale e inicialize a CLI do Google Cloud, caso ainda não tenha feito isso, install and initialize the Google Cloud CLI.
Use o
gcloud projects add-iam-policy-bindingcomando para conceder o papel:gcloud projects add-iam-policy-binding PROJECT_ID \ --member="PRINCIPAL" \ --role="ROLE_NAME"Substitua:
PROJECT_ID: o ID do Google Cloud projeto.PRINCIPAL: o identificador do principal, comouser:my-user@example.comougroup:my-group@example.com. Consulte Identificadores principais.ROLE_NAME: o papel a ser concedido, comoroles/appoptimize.adminouroles/appoptimize.viewer.
Por exemplo, para conceder o papel de Administrador do aplicativo Optimize ao usuário test-user@example.com no projeto my-appoptimize-project:
gcloud projects add-iam-policy-binding my-appoptimize-project \
--member="user:test-user@example.com" \
--role="roles/appoptimize.admin"
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Administrador do aplicativo Optimize
O papel de Administrador do aplicativo Optimize concede controle total sobre os recursos da App Optimize API e inclui permissões concedidas ao Leitor do aplicativo Optimize.
| Nome do papel | Permissões incluídas |
|---|---|
roles/appoptimize.admin |
|
Leitor do aplicativo Optimize
O papel de Leitor do App Optimize concede permissões para ler relatórios, metadados e operações da App Optimize API.
| Nome do papel | Permissões incluídas |
|---|---|
roles/appoptimize.viewer |
|
Permissões para criar relatórios
Para criar um relatório, um usuário, uma conta de serviço ou outro principal precisa ter:
A permissão
appoptimize.reports.createno projeto em que o recurso de relatório será criado. Essa permissão está incluída no papel de Administrador do aplicativo Optimize (roles/appoptimize.admin).A permissão
billing.resourceCosts.getem todos os projetos no escopo do relatório. Essa permissão é fornecida por papéis como o de Leitor da conta de faturamento (roles/billing.viewer) ou o de Leitor básico (roles/viewer).Permissões para acessar as fontes de dados abrangidas pelo escopo, dimensões e métricas do relatório. A API App Optimize verifica essas permissões quando o relatório é criado. Os papéis que concedem esse acesso à fonte de dados incluem:
Para métricas de utilização de CPU e memória: Leitor do Monitoring (
roles/monitoring.viewer) nos recursos no escopo.Para escopos e dimensões de aplicativos do App Hub: Leitor de gerenciamento de aplicativos (
roles/apphub.appManagementViewer) no projeto host do App Hub dos aplicativos.
Se você estiver gerando um relatório em um aplicativo do App Hub, que pode ser composto por vários projetos, será necessário ter as permissões de monitoramento e faturamento necessárias em todos os projetos associados do aplicativo para criar o relatório.
Permissões para ler dados de relatórios
Depois que um relatório é criado, um principal só precisa da permissão appoptimize.reports.getData para ler os dados gerados. Essa permissão pode estar no projeto em que o relatório foi criado ou no próprio relatório e está incluída nos papéis de Administrador do aplicativo Optimize e Leitor do aplicativo Optimize.
A seguir
- Saiba mais sobre os papéis e permissões do IAM roles and permissions.
- Saiba como criar um relatório.
- Consulte a visão geral da API App Optimize.