Condições do IAM para acesso granular
Nesta página, descrevemos como restringir o acesso às suas conexões usando as condições do IAM.
Uma condição do IAM
permite ter controle granular sobre os recursos dos Integration Connectors. Por padrão,
um usuário ou papel do Integration Connectors
pode realizar todas as operações compatíveis em uma conexão. Ao usar as Condições do IAM, é possível
restringir um usuário ou uma função específica para realizar somente determinadas operações em uma conexão. Por exemplo, é possível restringir um usuário
para que ele só possa modificar as conexões cujo nome começa com
test-connection
e não tenha outras permissões nas conexões, como
assinar eventos ou visualizar os metadados do esquema.
Antes de começar
Os Integration Connectors usam o Identity and Access Management (IAM) do Google Cloud para gerenciar papéis e permissões dos recursos dos Integration Connectors. Portanto, antes de especificar ou modificar condições do IAM para seus recursos do Integration Connector, familiarize-se com os seguintes conceitos do IAM:
Como adicionar condições do IAM
Para adicionar uma condição do IAM a um recurso do Integration Connectors, você precisa das seguintes informações:
- URI de recurso nomeado: cada recurso nos Integration Connectors tem um URI de recurso exclusivo. Por exemplo, o URI do recurso de conexão
projects/PROJECT_ID/locations/CONNECTION_LOCATION/connections/{connection_name}
: Para conferir a lista completa de todos os URIs disponíveis, consulte Recursos REST dos Integration Connectors. Para controlar as permissões de acesso de um recurso em um nível granular, nomeie seu recurso de acordo com uma convenção de nomenclatura. Com base nos seus requisitos, é possível decida a convenção de nomenclatura que você quer usar. Por exemplo, você pode prefixar a palavramarketing-
para todas as conexões de propriedade da equipe de marketing. Neste exemplo, o recurso URI para as conexões da equipe de marketing, vai começar comprojects/PROJECT_ID/locations/CONNECTION_LOCATION/connections/marketing-
: - Permissões somente para o pai: verifique se um recurso ou os recursos filhos dele exigem permissão somente para o pai. Para mais informações, consulte Permissões somente para pais.
- Tipo de recurso: é possível restringir ainda mais o escopo dos recursos, filtrando um
tipo de recurso na condição. O Integration Connectors é compatível com condições para os seguintes recursos:
Nome do recurso Tipo de recurso Conexão connectors.googleapis.com/Connection ManagedZone connectors.googleapis.com/ManagedZone EndpointAttachment connectors.googleapis.com/EndpointAttachment EventSubscription connectors.googleapis.com/EventSubscription ConnectionSchemaMetadata connectors.googleapis.com/ConnectionSchemaMetadata
Exemplos
A tabela a seguir lista os exemplos de condições de recursos que você pode aplicar a um usuário ou papel do Integration Connectors.
Condição do recurso do IAM | Descrição |
---|---|
(resource.name.startsWith
("projects/PROJECT_ID/locations/CONNECTION_LOCATION/
connections/marketing-") && resource.type == "connectors.googleapis.com/Connection"))
|| resource.type != "connectors.googleapis.com/Connection" |
Um usuário ou uma função a quem você aplica essa condição só pode fazer as seguintes operações:
|
(resource.name.startsWith ("projects/PROJECT_ID/locations/CONNECTION_LOCATION/ connections/marketing-") && resource.type == "connectors.googleapis.com/Connection") || (resource.name.startsWith ("projects/PROJECT_ID/locations/CONNECTION_LOCATION/ connections/marketing-") && resource.type == "connectors.googleapis.com/ConnectionSchemaMetadata") || (resource.type != "connectors.googleapis.com/Connection" && resource.type != "connectors.googleapis.com/ConnectionSchemaMetadata") |
Um usuário ou um papel a quem você aplica essa condição só pode fazer as seguintes operações:
|
Como adicionar condições do IAM a contas de serviço do Application Integration
É possível aplicar as condições do IAM à conta de serviço do Application Integration, o que permite restringir as conexões
que a conta de serviço pode acessar durante a execução da integração. Por exemplo, é possível restringir uma
conta de serviço para que ela só acesse conexões com nomes que começam com marketing-
.
Para mais informações, consulte Aplicar condições do IAM
a uma conta de serviço.
Na tabela a seguir, listamos exemplos de condições de recursos que podem ser aplicadas a uma conta de serviço da Application Integration.
Condição de recurso do IAM | Descrição |
---|---|
resource.name.startsWith ("projects/PROJECT_ID/locations/CONNECTION_LOCATION/ connections/marketing-") |
A conta de serviço em que você aplica essa condição pode executar apenas as conexões com nome que começa com marketing- . |
A seguir
Analise as seguintes informações na documentação do IAM:
- Como adicionar uma vinculação de papel condicional a uma política
- Modificar uma vinculação de papel condicional existente
- Como remover uma vinculação de papel condicional