Azure Red Hat OpenShift 4 kümesi (CLI) için Microsoft Entra kimlik doğrulamasını yapılandırma
CLI'yi yerel olarak yükleyip kullanmayı seçerseniz, bu makale Azure CLI 2.30.0 veya sonraki bir sürümünü çalıştırmanızı gerektirir. Sürümü bulmak için az --version
komutunu çalıştırın. Yüklemeniz veya yükseltmeniz gerekirse, bkz. Azure CLI yükleme.
Microsoft Entra uygulamasını yapılandırmak için kullanılacak kümeye özgü URL'lerinizi alın.
Kaynak grubu ve küme adı için değişkenleri ayarlayın.
resource_group kaynak grubunuzun adıyla,< aro_cluster> ise kümenizin adıyla değiştirin<.>
resource_group=<resource_group>
aro_cluster=<aro_cluster>
Kümenin OAuth geri çağırma URL'sini oluşturun ve oauthCallbackURL değişkeninde depolayın.
Dekont
AAD
OAuth geri arama URL'sindeki bölüm, daha sonra ayarlayacağımız OAuth kimlik sağlayıcısı adıyla eşleşmelidir.
domain=$(az aro show -g $resource_group -n $aro_cluster --query clusterProfile.domain -o tsv)
location=$(az aro show -g $resource_group -n $aro_cluster --query location -o tsv)
apiServer=$(az aro show -g $resource_group -n $aro_cluster --query apiserverProfile.url -o tsv)
webConsole=$(az aro show -g $resource_group -n $aro_cluster --query consoleProfile.url -o tsv)
oauthCallbackURL biçimi özel etki alanlarıyla biraz farklıdır:
Örneğin, özel bir etki alanı kullanıyorsanız aşağıdaki komutu çalıştırın.
contoso.com
oauthCallbackURL=https://oauth-openshift.apps.$domain/oauth2callback/AAD
Özel etki alanı
$domain
kullanmıyorsanız sekiz karakterli bir mezun dizesi olur ve tarafından$location.aroapp.io
genişletilir.oauthCallbackURL=https://oauth-openshift.apps.$domain.$location.aroapp.io/oauth2callback/AAD
Dekont
AAD
OAuth geri arama URL'sindeki bölüm, daha sonra ayarlayacağımız OAuth kimlik sağlayıcısı adıyla eşleşmelidir.
Kimlik doğrulaması için Microsoft Entra uygulaması oluşturma
client_secret> yerine uygulama için güvenli bir parola yazın<.
client_secret=<client_secret>
Bir Microsoft Entra uygulaması oluşturun ve oluşturulan uygulama tanımlayıcısını alın.
app_id=$(az ad app create \
--query appId -o tsv \
--display-name aro-auth \
--reply-urls $oauthCallbackURL \
--password $client_secret)
Uygulamanın sahibi olan aboneliğin kiracı kimliğini alın.
tenant_id=$(az account show --query tenantId -o tsv)
Kimlik Belirtecine eklenecek isteğe bağlı talepleri tanımlamak için bir bildirim dosyası oluşturun
Uygulama geliştiricileri, uygulamalarına gönderilen belirteçlerde hangi talepleri istediklerini belirtmek için Microsoft Entra uygulamalarında isteğe bağlı beyanları kullanabilir.
İsteğe bağlı beyanları kullanarak:
- Uygulamanız için belirteçlere eklenecek ek beyanları seçebilirsiniz.
- Microsoft Entra ID'nin belirteçlerde döndürdüğü belirli taleplerin davranışını değiştirin.
- Uygulamanız için özel beyanlar ekleyebilir ve bunlara erişebilirsiniz.
OpenShift'i talebi kullanacak email
şekilde yapılandıracak ve Microsoft Entra Id tarafından döndürülen kimlik belirtecinin bir parçası olarak ekleyerek upn
Tercih Edilen Kullanıcı Adı'nı ayarlamak için geri upn
döneceğiz.
Microsoft Entra uygulamasını yapılandırmak için bir manifest.json dosyası oluşturun.
cat > manifest.json<< EOF
[{
"name": "upn",
"source": null,
"essential": false,
"additionalProperties": []
},
{
"name": "email",
"source": null,
"essential": false,
"additionalProperties": []
}]
EOF
Microsoft Entra uygulamasının isteğe bağlıClaims'lerini bir bildirimle güncelleştirme
az ad app update \
--set optionalClaims.idToken=@manifest.json \
--id $app_id
Microsoft Entra uygulama kapsamı izinlerini güncelleştirme
Microsoft Entra Id'den kullanıcı bilgilerini okuyabilmek için uygun kapsamları tanımlamamız gerekir.
Oturum açmayı ve kullanıcı profilini okumayı etkinleştirmek için Azure Active Directory Graph.User.Read kapsamı için izin ekleyin.
az ad app permission add \
--api 00000002-0000-0000-c000-000000000000 \
--api-permissions 311a71cc-e848-46a1-bdf8-97ff7156d8e6=Scope \
--id $app_id
Dekont
Bu Microsoft Entra Kimliği için Genel Yönetici istrator olarak kimliğiniz doğrulanmadığı sürece, onay vermek için iletiyi güvenle yoksayabilirsiniz. Standart etki alanı kullanıcılarından, Microsoft Entra kimlik bilgilerini kullanarak kümede ilk kez oturum açtıklarında onay vermeleri istenir.
Kümeye kullanıcı ve grup atama (isteğe bağlı)
Microsoft Entra kiracısına kayıtlı uygulamalar, kiracının başarıyla kimlik doğrulaması yapan tüm kullanıcıları tarafından varsayılan olarak kullanılabilir. Microsoft Entra Id, kiracı yöneticilerinin ve geliştiricilerin bir uygulamayı kiracıdaki belirli bir kullanıcı veya güvenlik grubu kümesiyle kısıtlamasına olanak tanır.
Uygulamaya kullanıcı ve grup atamak için Microsoft Entra belgelerinde yer alan yönergeleri izleyin.
OpenShift OpenID kimlik doğrulamayı yapılandırma
kubeadmin
Kimlik bilgilerini alın. Kullanıcının parolasını bulmak için kubeadmin
aşağıdaki komutu çalıştırın.
kubeadmin_password=$(az aro list-credentials \
--name $aro_cluster \
--resource-group $resource_group \
--query kubeadminPassword --output tsv)
Aşağıdaki komutu kullanarak OpenShift kümesinin API sunucusunda oturum açın.
oc login $apiServer -u kubeadmin -p $kubeadmin_password
Microsoft Entra uygulama gizli dizisini depolamak için bir OpenShift gizli dizisi oluşturun.
oc create secret generic openid-client-secret-azuread \
--namespace openshift-config \
--from-literal=clientSecret=$client_secret
Microsoft Entra kimliğine göre OpenShift OpenID kimlik doğrulamasını yapılandırmak için bir oidc.yaml dosyası oluşturun.
cat > oidc.yaml<< EOF
apiVersion: config.openshift.io/v1
kind: OAuth
metadata:
name: cluster
spec:
identityProviders:
- name: AAD
mappingMethod: claim
type: OpenID
openID:
clientID: $app_id
clientSecret:
name: openid-client-secret-azuread
extraScopes:
- email
- profile
extraAuthorizeParameters:
include_granted_scopes: "true"
claims:
preferredUsername:
- email
- upn
name:
- name
email:
- email
issuer: https://login.microsoftonline.com/$tenant_id
EOF
Yapılandırmayı kümeye uygulayın.
oc apply -f oidc.yaml
Aşağıdakine benzer bir yanıt alırsınız.
oauth.config.openshift.io/cluster configured
Microsoft Entra Id aracılığıyla oturum açmayı doğrulama
OpenShift Web Konsolu'nun oturumunu kapatıp yeniden oturum açmayı denerseniz, Microsoft Entra Id ile oturum açmak için yeni bir seçenek sunulur. Birkaç dakika beklemeniz gerekebilir.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin