Nesta página, descrevemos como conceder aos usuários acesso à sua instância do Secure Source Manager usando o Identity and Access Management (IAM). Para mais detalhes sobre o controle de acesso no Secure Source Manager, consulte Controle de acesso com o IAM.
Funções exigidas
    
      Para receber as permissões
      necessárias a fim de conceder aos usuários acesso à instância,
    
      peça ao administrador para conceder a você o
    
  
  
    
      papel do IAM de Proprietário da instância do Secure Source Manager  (roles/securesourcemanager.instanceOwner)
     na instância do Secure Source Manager.
  
  
  
  
  Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
  
  
Também é possível conseguir as permissões necessárias usando papéis personalizados ou outros papéis predefinidos.
Para informações sobre como conceder papéis do Secure Source Manager, consulte Controle de acesso com o IAM.
Conceder acesso a usuários da federação de identidade de colaboradores
Se você usa a federação de identidade de colaboradores para acessar o Secure Source Manager, os principais são representados de maneira diferente. Para saber mais sobre como conceder acesso a principais que representam grupos de identidades, consulte Representar usuários do pool de força de trabalho nas políticas do IAM.
Por exemplo, o comando a seguir concede ao usuário user@example.com o papel
de Leitor de acesso à instância (roles/securesourcemanager.instanceAccessor) no
pool de funcionários my-pool na instância my-instance no
projeto my-project na região us-central1:
  gcloud beta source-manager instances add-iam-policy-binding my-instance \
      --project=my-project \
      --region=us-central1 \
      --member=principal://iam.googleapis.com/locations/global/workforcePools/my-pool/subject/user@example.com \
      --role=roles/securesourcemanager.instanceAccessor
É possível conceder acesso a usuários ou grupos no seu pool de identidades de colaboradores com base nos atributos do provedor de identidade (IdP) ou usar a Common Expression Language (CEL) para mapear seus atributos OIDC para atributos personalizados e definir uma estratégia de autorização na sua política do IAM. Para mais informações sobre mapeamentos de atributos, leia Mapeamentos de atributos.
Conceder acesso a um único usuário
Para conceder acesso a um único usuário à instância, use o seguinte comando da Google Cloud CLI:
  gcloud beta source-manager instances add-iam-policy-binding INSTANCE_ID \
      --project=PROJECT_ID \
      --region=REGION \
      --member=PRINCIPAL_IDENTIFIER \
      --role=roles/securesourcemanager.instanceAccessor
Substitua:
- INSTANCE_IDcom o ID da instância.
- PROJECT_IDcom o ID ou número do projeto da instância.
- REGIONcom a região em que a instância está localizada. Consulte a documentação de locais para ver as regiões disponíveis do Secure Source Manager.
- PRINCIPAL_IDENTIFIERcom o identificador do principal a quem você quer conceder o papel.- Por exemplo, para conceder a função a um único usuário com o endereço de e-mail dele, formate o identificador principal como - user:EMAIL, em que EMAIL é o endereço de e-mail do usuário.- Para mais informações sobre identificadores principais compatíveis, consulte Identificadores principais. 
Por exemplo, o comando a seguir concede ao usuário trusted-user1@gmail.com
o papel roles/securesourcemanager.instanceAccessor na instância
my-instance, no projeto my-project na região us-central.
  gcloud beta source-manager instances add-iam-policy-binding INSTANCE_ID \
      --project=my-project \
      --region=us-central1 \
      --member=user:trusted-user1@gmail.com \
      --role=roles/securesourcemanager.instanceAccessor
Conceder acesso a vários usuários
- Crie um grupo do Google com todos os usuários que precisam acessar sua instância. O grupo pode ser específico de um domínio. - Recomendamos criar um grupo amplo que inclua todos os usuários em potencial, por exemplo, todos os desenvolvedores e pessoas que podem registrar problemas na sua empresa. Os usuários precisam estar nesse grupo para acessar ou criar recursos em uma instância do Secure Source Manager, incluindo repositórios e problemas. - Ao criar um grupo amplo, os líderes de equipe podem gerenciar funções de usuário no nível da instância e do repositório sem precisar gerenciar a associação ao grupo. 
- Para ler a política de permissão atual e salvá-la em - /tmp/instances.json, execute o seguinte comando:- gcloud beta source-manager instances get-iam-policy INSTANCE_ID \ --project=PROJECT_ID \ --region=REGION \ --format=json > /tmp/instance.json- Substitua: - INSTANCE_IDcom o ID da instância.
- PROJECT_IDcom o ID ou número do projeto da instância.
- REGIONcom a região em que a instância está localizada. Consulte a documentação de locais para conferir as regiões disponíveis do Secure Source Manager.
 - A saída vai incluir todas as vinculações atuais ou, se não houver nenhuma, o valor - etagsemelhante ao seguinte:- { "etag": "BwUjHYKJUiQ=" }
- Edite o arquivo JSON - /tmp/instance.jsonpara conceder aos seus grupos as seguintes funções:- Papel de acessador de instâncias (roles/securesourcemanager.instanceAccessor) para usuários que precisam visualizar a instância, mas não criar ou modificar repositórios.
- Função de criador de repositório de instância
(roles/securesourcemanager.instanceRepositoryCreator) para usuários que precisam criar e modificar repositórios.
- Papel de proprietário da instância
(roles/securesourcemanager.instanceOwner) para usuários que vão gerenciar sua instância.
 - A política de exemplo a seguir concede o papel - roles/securesourcemanager.instanceRepositoryCreatorao grupo- your-group@gmail.come concede aos usuários- trusted-user1@gmail.come- trusted-user2@gmail.como papel- roles/securesourcemanager.instanceOwner.- { "etag": "ETAG", "bindings": [ { "role": "roles/securesourcemanager.instanceRepositoryCreator", "members": [ "group:GROUP_EMAIL" ] }, { "role": "roles/securesourcemanager.instanceOwner", "members": [ "user:USER_EMAIL_1", "user:USER_EMAIL_2" ] } ] }- Substitua: - ETAGcom o valor- etagda resposta- getIamPolicy. Nesse caso, seria- BwUjHYKJUiQ=.
- GROUP_EMAILcom o endereço de e-mail do seu grupo do Google.
- USER_EMAIL_1e- USER_EMAIL_2com os endereços de e-mail dos usuários a quem você quer conceder a função de proprietário da instância.
 
- Papel de acessador de instâncias (
- Salve o arquivo - /tmp/instance.jsoneditado.
- Depois de modificar a política de permissão salva para conceder e revogar os papéis desejados, atualize a política de permissão da instância executando o seguinte comando: - gcloud beta source-manager instances set-iam-policy INSTANCE_ID \ --project=PROJECT_ID \ --region=REGION \ /tmp/instance.json- Substitua: - INSTANCE_IDcom o ID da instância.
- PROJECT_IDcom o ID ou número do projeto da instância.
- REGIONcom a região em que a instância está localizada. Consulte a documentação de locais para conferir as regiões disponíveis do Secure Source Manager.
 
A seguir
- Conceda acesso ao repositório para os usuários.
- Saiba mais sobre o controle de acesso com o IAM.
- Crie um repositório.
- Conceda e revogue papéis do IAM.