A maioria dos Trusted Cloud by S3NS recursos expõe o método testIamPermissions()
, que
lhe permite verificar programaticamente se o autor da chamada autenticado atualmente
recebeu uma ou mais autorizações de IAM específicas no
recurso. O método testIamPermissions()
usa um identificador de recurso e um conjunto de autorizações como parâmetros de entrada e devolve o conjunto de autorizações que o autor da chamada tem permissão para usar.
Pode usar o método testIamPermissions()
para determinar se um utilizador deve ter acesso a uma ferramenta administrativa numa aplicação Web. Por exemplo, pode usar este método para decidir, com base nas autorizações do utilizador, se deve apresentar informações detalhadas sobre um Trusted Cloud recurso.
Por exemplo, para determinar se o utilizador autenticado atualmente tem autorização para eliminar um projeto, chame o método projects.testIamPermissions()
fornecendo o ID do projeto (como foo-project
) e a autorização resourcemanager.projects.delete
como parâmetros de entrada. Se o autor da chamada tiver recebido a autorização resourcemanager.projects.delete
, esta é apresentada no corpo da resposta. Se o autor da chamada não tiver esta autorização,
o corpo da resposta não apresenta autorizações.
O método testIamPermissions()
destina-se a interfaces gráficas do utilizador (GUIs) de terceiros que precisam de apresentar recursos Trusted Cloud com base no que o utilizador autenticado tem autorização para ver. Por exemplo, a
Trusted Cloud consola usa internamente o método testIamPermissions()
para
determinar que recursos e funcionalidades estão visíveis para si após a
autenticação. Normalmente, são concedidas autorizações diferentes a utilizadores diferentes,
e a Trusted Cloud consola oculta ou expõe itens em conformidade.
Antes de começar
Enable the Resource Manager API.
Configurar autenticação.
Select the tab for how you plan to use the samples on this page:
C#
Para usar os .NET exemplos nesta página num ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e, em seguida, configure as Credenciais predefinidas da aplicação com as suas credenciais de utilizador.
Instale a CLI Google Cloud e, em seguida, inicie sessão na CLI gcloud com a sua identidade federada.
Create local authentication credentials for your user account:
gcloud auth application-default login
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para mais informações, consulte Configurar o ADC para um ambiente de desenvolvimento local na Trusted Cloud documentação de autenticação.
C++
Para usar os C++ exemplos nesta página num ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e, em seguida, configure as Credenciais predefinidas da aplicação com as suas credenciais de utilizador.
Instale a CLI Google Cloud e, em seguida, inicie sessão na CLI gcloud com a sua identidade federada.
Create local authentication credentials for your user account:
gcloud auth application-default login
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para mais informações, consulte Configurar o ADC para um ambiente de desenvolvimento local na Trusted Cloud documentação de autenticação.
Java
Para usar os Java exemplos nesta página num ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e, em seguida, configure as Credenciais predefinidas da aplicação com as suas credenciais de utilizador.
Instale a CLI Google Cloud e, em seguida, inicie sessão na CLI gcloud com a sua identidade federada.
Create local authentication credentials for your user account:
gcloud auth application-default login
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para mais informações, consulte Configurar o ADC para um ambiente de desenvolvimento local na Trusted Cloud documentação de autenticação.
Python
Para usar os Python exemplos nesta página num ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e, em seguida, configure as Credenciais predefinidas da aplicação com as suas credenciais de utilizador.
Instale a CLI Google Cloud e, em seguida, inicie sessão na CLI gcloud com a sua identidade federada.
Create local authentication credentials for your user account:
gcloud auth application-default login
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para mais informações, consulte Configurar o ADC para um ambiente de desenvolvimento local na Trusted Cloud documentação de autenticação.
REST
Para usar os exemplos da API REST nesta página num ambiente de desenvolvimento local, usa as credenciais que fornece à CLI gcloud.
Instale a CLI Google Cloud e, em seguida, inicie sessão na CLI gcloud com a sua identidade federada.
Para mais informações, consulte o artigo Autenticar para usar REST na Trusted Cloud documentação de autenticação.
Funções necessárias
Não é necessária nenhuma função do IAM para testar autorizações.
Como testar as autorizações
Este exemplo mostra como testar as autorizações
resourcemanager.projects.get
eresourcemanager.projects.delete
para um Trusted Cloud projeto. Para testar as autorizações de outros Trusted Cloud recursos, use o métodotestIamPermissions()
exposto por cada recurso. Por exemplo, pode testar as autorizações de IAM para um contentor do Cloud Storage.C++
Para saber como instalar e usar a biblioteca cliente para a IAM, consulte o artigo Bibliotecas cliente da IAM. Para mais informações, consulte a documentação de referência da API C++ IAM.
Para se autenticar no IAM, configure as Credenciais padrão da aplicação. Para mais informações, consulte a secção Antes de começar.
Antes de executar exemplos de código, defina a variável
GOOGLE_CLOUD_UNIVERSE_DOMAIN
environment comos3nsapis.fr
.C#
Para se autenticar no Resource Manager, configure as Credenciais padrão da aplicação. Para mais informações, consulte a secção Antes de começar.
Para saber como instalar e usar a biblioteca de cliente do Resource Manager, consulte as bibliotecas de cliente do Resource Manager.
O IAM testa as autorizações da conta de serviço que está a usar para gerar credenciais.
Java
Para se autenticar no Resource Manager, configure as Credenciais padrão da aplicação. Para mais informações, consulte a secção Antes de começar.
Para saber como instalar e usar a biblioteca de cliente do Resource Manager, consulte as bibliotecas de cliente do Resource Manager.
O IAM testa as autorizações da conta de serviço que está a usar para gerar credenciais.
Python
Para se autenticar no Resource Manager, configure as Credenciais padrão da aplicação. Para mais informações, consulte a secção Antes de começar.
Para saber como instalar e usar a biblioteca de cliente do Resource Manager, consulte as bibliotecas de cliente do Resource Manager.
O IAM testa as autorizações da conta de serviço que está a usar para gerar credenciais.
REST
Neste exemplo, o utilizador tem uma função de IAM que lhe permite obter informações sobre um projeto, mas não eliminar projetos.
O método
projects.testIamPermissions
da API Resource Manager aceita uma lista de autorizações e testa quais as autorizações que um principal tem.Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
PROJECT_ID
: O ID do seu Trusted Cloud projeto. Os IDs dos projetos são strings alfanuméricas, comomy-project
.
Método HTTP e URL:
POST https://cloudresourcemanager.googleapis.com/v1/projects/PROJECT_ID:testIamPermissions
Corpo JSON do pedido:
{ "permissions": [ "resourcemanager.projects.get", "resourcemanager.projects.delete" ] }
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "permissions": [ "resourcemanager.projects.get" ] }
O que se segue?
Saiba como conceder, alterar e revogar o acesso a responsáveis.
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2025-08-20 UTC.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-08-20 UTC."],[[["\u003cp\u003eThe \u003ccode\u003etestIamPermissions()\u003c/code\u003e method lets you check if an authenticated caller has specific IAM permissions on a Google Cloud resource.\u003c/p\u003e\n"],["\u003cp\u003eThis method takes a resource identifier and a set of permissions as input, returning the permissions that the caller is allowed.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003etestIamPermissions()\u003c/code\u003e is used to decide whether to display detailed information or features within third-party user interfaces based on a user's permissions, like hiding or exposing items in the Google Cloud console.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003etestIamPermissions()\u003c/code\u003e method is implemented on most Google Cloud resources, and you can use the \u003ca href=\"/resource-manager/reference/rest/v1/projects/testIamPermissions\"\u003e\u003ccode\u003eprojects.testIamPermissions()\u003c/code\u003e\u003c/a\u003e method for the project resources.\u003c/p\u003e\n"],["\u003cp\u003eBefore testing permissions you should make sure to authenticate to Resource Manager, and to set up Application Default Credentials.\u003c/p\u003e\n"]]],[],null,[]]