Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Saat membuat prinsipal layanan, Anda memilih jenis autentikasi masuk yang akan digunakan. Ada dua jenis autentikasi yang tersedia untuk perwakilan layanan Azure: autentikasi berbasis kata sandi dan autentikasi berbasis sertifikat. Autentikasi berbasis kata sandi baik digunakan saat mempelajari perwakilan layanan, tetapi sebaiknya gunakan autentikasi berbasis sertifikat untuk aplikasi.
Langkah dalam tutorial ini menjelaskan cara menggunakan kata sandi perwakilan layanan untuk mengakses sumber daya Azure.
Buat prinsipal layanan yang berisi kata sandi
Perilaku default az ad sp create-for-rbac adalah membuat perwakilan layanan dengan kata sandi acak.
az ad sp create-for-rbac --name myServicePrincipalName \
--role reader \
--scopes /subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName
Konsol keluaran
{
"appId": "myServicePrincipalId",
"displayName": "myServicePrincipalName",
"password": "myServicePrincipalPassword",
"tenant": "myOrganizationTenantId"
}
Output perwakilan layanan dengan autentikasi kata sandi menyertakan kunci password
. Pastikan Anda menyalin nilai ini - nilai tersebut tidak dapat diambil. Jika lupa sandi, atur ulang kredensial prinsipal layanan.
Masuk menggunakan entitas layanan dengan kata sandi
Uji kredensial dan izin prinsipal layanan baru dengan masuk ke dalam akun. Untuk masuk dengan perwakilan layanan, Anda memerlukan appId
(juga dikenal sebagai "ID perwakilan layanan", "nama pengguna" atau "penerima tugas"), tenant
, dan password
. Berikut adalah sebuah contoh:
az login --service-principal \
--username myServicePrincipalId \
--password myServicePrincipalPassword \
--tenant myOrganizationTenantID
Jika Anda tidak mengetahui appId
atau --tenant
, ambil dengan menggunakan perintah az ad sp list
.
spID=$(az ad sp list --display-name myServicePrincipalName --query "[].{spID:appId}" --output tsv)
tenantID=$(az ad sp list --display-name myServicePrincipalName --query "[].{tenant:appOwnerOrganizationId}" --output tsv)
echo "Using appId $spID in tenant $tenantID"
az login --service-principal \
--username $spID \
--password {paste your password here} \
--tenant $tenantID
Jika Anda menguji di organisasi yang memerlukan autentikasi dua faktor, pesan kesalahan "... Autentikasi interaktif diperlukan..." ditampilkan. Sebagai alternatif, gunakan sertifikat atau identitas terkelola.
Penting
Jika Anda ingin menghindari menampilkan kata sandi Anda di konsol dan menggunakan az login
secara interaktif, gunakan read -s
perintah di bash
.
read -sp "Azure password: " AZ_PASS && echo && az login --service-principal -u <app-id> -p $AZ_PASS --tenant <tenant>
Di PowerShell, gunakan cmdlet Get-Credential
.
$AzCred = Get-Credential -UserName <app-id>
az login --service-principal -u $AzCred.UserName -p $AzCred.GetNetworkCredential().Password --tenant <tenant>
Langkah Selanjutnya
Sekarang setelah Anda mempelajari cara bekerja dengan perwakilan layanan menggunakan kata sandi, lanjutkan ke langkah berikutnya untuk mempelajari cara menggunakan perwakilan layanan dengan autentikasi berbasis sertifikat.