Compartilhar via


Configurar a autenticação do Microsoft Entra para um cluster do Red Hat OpenShift 4 no Azure (Portal)

Se você optar por instalar e usar a CLI localmente, este tutorial exigirá a execução da CLI do Azure versão 2.6.0 ou posterior. Execute az --version para encontrar a versão. Se você precisa instalar ou atualizar, consulte Instalar a CLI do Azure.

Antes de começar

Construa a URL de retorno de chamada do OAuth do cluster e anote-a. Substitua aro-rg pelo nome do grupo de recursos e aro-cluster pelo nome do cluster.

Observação

A seção AAD na URL de retorno de chamada do OAuth deve corresponder ao nome do provedor de identidade do OAuth que você vai configurar mais tarde.

domain=$(az aro show -g aro-rg -n aro-cluster --query clusterProfile.domain -o tsv)
location=$(az aro show -g aro-rg -n aro-cluster --query location -o tsv)
echo "OAuth callback URL: https://oauth-openshift.apps.$domain.$location.aroapp.io/oauth2callback/AAD"

Criar um aplicativo Microsoft Entra para autenticação

Faça logon no portal do Azure e navegue até a folha Registros de aplicativo. Clique em Novo registro para criar um aplicativo.

Forneça um nome para o aplicativo, por exemplo, aro-azuread-auth e preencha o URI de redirecionamento usando o valor da URL de retorno de chamada do OAuth que você já havia recuperado.

New application registration

Navegue até Certificados e segredos, clique em Novo segredo do cliente e preencha os detalhes. Anote o valor da chave, pois você o usará mais tarde. Você não poderá recuperá-lo novamente.

Create a secret

Navegue até a Visão geral e anote a ID do aplicativo (cliente) e a ID do diretório (locatário). Você precisará delas mais tarde.

Retrieve Application (client) and Directory (tenant) IDs

Configurar declarações opcionais

Os desenvolvedores de aplicativos podem usar declarações opcionais em seus aplicativos do Microsoft Entra para especificar quais declarações desejam em tokens enviados para seus aplicativos.

Você pode usar declarações opcionais para:

  • Selecione declarações adicionais para incluir nos tokens para o aplicativo.
  • Altere o comportamento de determinadas declarações que o Microsoft Entra ID retorna em tokens.
  • Adicione e acesse as declarações personalizadas para o aplicativo.

Vamos configurar o OpenShift para usar a declaração e voltar para upn definir o Nome de Usuário Preferencial adicionando o email upn como parte do token de ID retornado pelo Microsoft Entra ID.

Navegue até Configuração de token e clique em Adicionar declaração opcional. Selecione ID e verifique as declarações de email e de upn.

Screenshot that shows the email and upn claims that were added.

Atribuir usuários e grupos ao cluster (opcional)

Os aplicativos registrados em um locatário do Microsoft Entra estão, por padrão, disponíveis para todos os usuários do locatário que se autenticar com sucesso. O Microsoft Entra ID permite que administradores e desenvolvedores de locatários restrinjam um aplicativo a um conjunto específico de usuários ou grupos de segurança no locatário.

Siga as instruções na documentação do Microsoft Entra para atribuir usuários e grupos ao aplicativo.

Configurar a autenticação OpenID do OpenShift

Recupere as credenciais do kubeadmin. Execute o comando a seguir para localizar a senha para o usuário kubeadmin.

az aro list-credentials \
  --name aro-cluster \
  --resource-group aro-rg

A saída de exemplo a seguir mostra que a senha estará em kubeadminPassword.

{
  "kubeadminPassword": "<generated password>",
  "kubeadminUsername": "kubeadmin"
}

Você pode encontrar a URL do console de cluster executando o comando a seguir, que será semelhante a https://console-openshift-console.apps.<random>.<region>.aroapp.io/

 az aro show \
    --name aro-cluster \
    --resource-group aro-rg \
    --query "consoleProfile.url" -o tsv

Inicie a URL do console em um navegador e faça logon usando as credenciais kubeadmin.

Navegue até Administração, clique em Configurações de Cluster e selecione a guia Configuração.

Role para baixo, selecione Adicionar em Provedores de Identidade e escolha OpenID Connect. Select OpenID Connect from the Identity Providers dropdown

Preencha o nome como Microsoft Entra ID, a ID do Cliente como a ID do Aplicativo e o Segredo do Cliente. A URL do Emissor tem o seguinte formato: https://login.microsoftonline.com/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/v2.0. Substitua o espaço reservado pela ID do Locatário que você já havia recuperado.

Fill in OAuth details

Role para baixo até a seção Declarações e atualize o Nome de Usuário Preferencial para usar o valor da declaração de upn.

Fill in claims details

Verificar o login por meio do Microsoft Entra ID

Se você sair do OpenShift Web Console e tentar fazer login novamente, será apresentada uma nova opção para fazer login com o Microsoft Entra ID. Talvez você precise aguardar alguns minutos.

Login screen with Microsoft Entra option

Observação

Se você encontrar um erro como "AADSTS50011: o URI de redirecionamento especificado na solicitação não corresponde aos URIs de redirecionamento configurados", você pode seguir o guia de solução de problemas Azure AD (OIDC) logon falhou quando o URI https://oauth-openshift.apps.xxxxxxxxxx.xxxxxxx.aroapp.io/oauth2callback/xxxx de redirecionamento não está definido corretamente para resolver o problema.