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.
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.
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.
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.
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.
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.
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.
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.
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.