Etapa 4: configurar o Identity-Aware Proxy (IAP)

Nesta etapa, você configura o Identity-Aware Proxy (IAP) para provisionar uma camada de autorização centralizada para o app implantado no Cloud Run, fazendo o seguinte:

  1. Configure a tela de permissão OAuth: essa tela é um prompt que inclui um resumo do seu projeto, suas políticas e os escopos de acesso de autorização solicitados. Ao configurar a tela de consentimento do OAuth para seu app, você define o que está disponível para usuários e revisores de apps e também registra o app para poder publicá-lo mais tarde. Para saber mais sobre a tela de consentimento OAuth, consulte Configurar a tela de consentimento OAuth e escolher escopos.

  2. Criar credenciais de acesso OAuth: é necessário criar um ID do cliente OAuth para seu app e domínio, para que o app possa chamar as APIs necessárias. Para saber mais sobre credenciais OAuth, consulte Criar credenciais de acesso.

  3. Ative o IAP no balanceador de carga: use o ID do cliente OAuth e um secret para ativar o IAP no balanceador de carga em que você criou seu app.

  4. Ative o IAP: proteja seu aplicativo criando principais que podem acessar o aplicativo e ativar o IAP.

  1. No console do Google Cloud, acesse a tela de permissão OAuth.

    Acessar a tela de permissão OAuth

  2. Selecione um dos seguintes tipos de usuário para seu app:

    • Externo: qualquer usuário com uma Conta do Google pode fazer solicitações de autorização. Para concluir este tutorial, recomendamos selecionar Externo.

    • Interno: somente os membros da sua organização do Google Cloud podem fazer solicitações de autorização para o app.

  3. Clique em Criar.

  4. Na seção Domínios autorizados, em Adicionar domínio, especifique o nome de domínio usado durante a criação do certificado.

  5. Na seção Informações de contato do desenvolvedor, insira seu endereço de e-mail.

  6. Clique em Salvar e continuar.

  7. Na página Escopos, clique em Salvar e continuar.

  8. Opcional: se você selecionou Externo como o tipo de usuário, adicione usuários de teste na página Usuários de teste da seguinte maneira:

    1. Clique em Add users.

    2. Insira seu endereço de e-mail e os outros usuários de teste autorizados. Depois, clique em Salvar e continuar.

  9. Analise o resumo do registro do app. Para fazer alterações, clique em Editar. Se o registro do app estiver correto, clique em Voltar ao painel.

Criar credenciais de acesso OAuth

  1. No console do Google Cloud, acesse Credenciais.

    Ir para Credenciais

  2. Clique em Criar credenciais e em ID do cliente do OAuth.

  3. Na lista Tipo de aplicativo, clique em Aplicativo da Web.

  4. No campo Nome, use gemini-streamlit-app.

  5. Na seção Origens JavaScript autorizadas, clique em Adicionar URI e insira o seguinte URI:

    https://DOMAIN_NAME
    

    Substitua DOMAIN_NAME pelo nome de domínio usado durante a criação do certificado.

  6. Clique em Criar.

    A tela Cliente OAuth criado aparece, mostrando o ID do cliente e a Chave secreta do cliente.

  7. Copie o ID do cliente e a Chave secreta do cliente. Você precisará de detalhes na próxima etapa do tutorial.

Ativar o IAP no balanceador de carga

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. No terminal do Cloud Shell, execute o comando a seguir:
    
          gcloud compute backend-services update gemini-streamlit-app-backend \
          --iap=enabled,oauth2-client-id=CLIENT_ID,oauth2-client-secret=CLIENT_SECRET \
          --global
          

    Substitua:

    • CLIENT_ID: o ID do cliente OAuth das credenciais do OAuth que você acabou de criar.
    • CLIENT_SECRET: a chave secreta do cliente OAuth das credenciais do OAuth que você acabou de criar.

Configurar e usar o IAP

  1. Acesse a página Identity-Aware Proxy.

    Acessar a página Identity-Aware Proxy

  2. Selecione o projeto.

  3. Marque a caixa de seleção ao lado de gemini-streamlit-app-backend.

  4. Clique em Adicionar principal.

  5. Insira os detalhes nos seguintes campos:

    • Novos principais: insira os endereços de e-mail de grupos ou indivíduos para conceder a eles acesso ao seu app. Qualquer uma das seguintes opções pode ser um principal:

      • Conta do Google

      • Grupo do Google

      • Conta de serviço

      • Domínio do Google Workspace

      Inclua uma Conta do Google a que você tenha acesso.

  6. Na lista Papel, selecione Cloud IAP > Usuário do app da Web protegido pelo IAP.

  7. Clique em Salvar.

  8. Na página do Identity-Aware Proxy, em Aplicativos, clique no botão de alternância do IAP para a posição de ativação na linha correspondente para o recurso gemini-streamlit-app-backend.

  9. Na janela Ativar IAP que aparece, marque a caixa de seleção para confirmar que você leu os requisitos de configuração e configurou o back-end de acordo com eles.

  10. Clique em Ativar. Depois disso, será necessário usar credenciais de login para todas as conexões com o balanceador de carga. Somente contas com o papel Usuário do app da Web protegido pelo IAP no projeto recebem o acesso.