Microsoft Entra ID használata az Azure-hitelesítéshez
A Microsoft Entra ID szolgáltatás számos felügyeleti feladatot tesz lehetővé, például a felhasználókezelést, a tartománykezelést és az egyszeri bejelentkezés konfigurálását. Ez a cikk azt ismerteti, hogyan használhatja a Microsoft Entra ID-t az Azure Automationben az Azure-beli hitelesítés szolgáltatójaként.
Microsoft Entra-modulok telepítése
A Microsoft Entra-azonosítót a következő PowerShell-modulokon keresztül engedélyezheti:
Azure Active Directory PowerShell for Graph (AzureRM és Az modulok). Az Azure Automation az AzureRM modullal és annak legutóbbi frissítésével, az Az modullal rendelkezik. A funkciók közé tartozik az Azure-ba irányuló nem interaktív hitelesítés a Microsoft Entra-felhasználó (OrgId) hitelesítő adatokon alapuló hitelesítésének használatával. Lásd: Microsoft Entra ID 2.0.2.76.
Microsoft Entra ID for Windows PowerShell (MSOnline modul). Ez a modul lehetővé teszi a Microsoft Online-nal való interakciót, beleértve a Microsoft 365-öt is.
Feljegyzés
A PowerShell Core nem támogatja az MSOnline modult. A modulparancsmagok használatához a Windows PowerShellből kell futtatnia őket. Javasoljuk, hogy az MSOnline modul helyett az újabb Azure Active Directory PowerShell for Graph-modulokat használja.
Feljegyzés
Az Azure AD- és MSOnline PowerShell-modulok 2024. március 30-ától elavultak. További információkért olvassa el az elavulás frissítését. Ezen dátum után ezeknek a moduloknak a támogatása a Microsoft Graph PowerShell SDK-ra való migrálásra és a biztonsági javításokra korlátozódik. Az elavult modulok 2025. március 30-ától működnek tovább.
Javasoljuk, hogy migráljon a Microsoft Graph PowerShellbe a Microsoft Entra ID (korábbi nevén Azure AD) használatához. Gyakori migrálási kérdésekért tekintse meg a migrálással kapcsolatos gyakori kérdéseket. Megjegyzés: Az MSOnline 1.0.x verziói 2024. június 30. után fennakadást tapasztalhatnak.
Előtelepítés
Mielőtt telepíti a Microsoft Entra-modulokat a számítógépre:
Távolítsa el az AzureRM/Az modul és az MSOnline modul korábbi verzióit.
Távolítsa el a Microsoft Online Services bejelentkezési segédet az új PowerShell-modulok megfelelő működéséhez.
Az AzureRM és az Az modulok telepítése
Feljegyzés
A modulok használatához a PowerShell 5.1-es vagy újabb verzióját kell használnia a Windows 64 bites verziójával.
Telepítse a Windows Management Framework (WMF) 5.1-et. Lásd: A WMF 5.1 telepítése és konfigurálása.
Telepítse az AzureRM-et és/vagy az Az-t az Azure PowerShell windowsos telepítése a PowerShellGet használatával.
Az MSOnline modul telepítése
Feljegyzés
Az MSOnline modul telepítéséhez rendszergazdai szerepkör tagjának kell lennie. Lásd a rendszergazdai szerepkörökről szóló témakört.
Győződjön meg arról, hogy a Microsoft .NET-keretrendszer 3.5.x funkció engedélyezve van a számítógépen. Valószínű, hogy a számítógép újabb verzióval rendelkezik, de a .NET-keretrendszer régebbi verzióival való visszamenőleges kompatibilitás engedélyezhető vagy letiltható.
Telepítse a Microsoft Online Services bejelentkezési segéd 64 bites verzióját.
Rendszergazdaként futtassa a Windows PowerShellt egy emelt szintű Windows PowerShell-parancssor létrehozásához.
Ha a rendszer felkéri a NuGet-szolgáltató telepítésére, írja be az Y kifejezést, és nyomja le az ENTER billentyűt.
Ha a rendszer kéri, hogy telepítse a modult a PSGalleryből, írja be az Y kifejezést, és nyomja le az ENTER billentyűt.
A PSCredential támogatásának telepítése
Az Azure Automation a PSCredential osztályt használja egy hitelesítő adategység ábrázolására. A szkriptek a parancsmag használatával kérik le PSCredential
az Get-AutomationPSCredential
objektumokat. További információ: Hitelesítő adatok az Azure Automationben.
Előfizetés-adminisztrátor hozzárendelése
Hozzá kell rendelnie egy rendszergazdát az Azure-előfizetéshez. Ez a személy tulajdonosi szerepkörrel rendelkezik az előfizetés hatókörében. Lásd: Szerepköralapú hozzáférés-vezérlés az Azure Automationben.
A Microsoft Entra-felhasználó jelszavának módosítása
A Microsoft Entra-felhasználó jelszavának módosítása:
Jelentkezzen ki az Azure-ból.
Kérje meg a rendszergazdat, hogy jelentkezzen be az Azure-ba az imént létrehozott Microsoft Entra-felhasználóként a teljes felhasználónévvel (a tartományt is beleértve) és egy ideiglenes jelszóval.
Kérje meg a rendszergazdát, hogy módosítsa a jelszót, amikor a rendszer kéri.
Az Azure Automation konfigurálása az Azure-előfizetés kezeléséhez
Ahhoz, hogy az Azure Automation kommunikáljon a Microsoft Entra-azonosítóval, le kell kérnie az Azure-kapcsolathoz és a Microsoft Entra-azonosítóhoz társított hitelesítő adatokat. Ilyen hitelesítő adatok például a bérlőazonosító, az előfizetés azonosítója és hasonlók. Az Azure és a Microsoft Entra ID közötti kapcsolatról további információt a Szervezet csatlakoztatása a Microsoft Entra-azonosítóhoz című témakörben talál.
Hitelesítő adategység létrehozása
A Microsoft Entra azure-beli hitelesítő adatainak rendelkezésre állásával ideje létrehozni egy Azure Automation hitelesítőadat-objektumot a Microsoft Entra hitelesítő adatainak biztonságos tárolásához, hogy a runbookok és a Desire State Configuration (DSC) szkriptek hozzáférhessenek hozzájuk. Ezt az Azure Portal vagy a PowerShell-parancsmagok használatával teheti meg.
A hitelesítő adategység létrehozása az Azure Portalon
A hitelesítő adategységet az Azure Portal használatával hozhatja létre. Végezze el ezt a műveletet az Automation-fiókjából a Megosztott erőforrások területen lévő hitelesítő adatok használatával. Tekintse meg a hitelesítő adatokat az Azure Automationben.
A hitelesítő adategység létrehozása a Windows PowerShell használatával
Ha új hitelesítőadat-objektumot szeretne előkészíteni a Windows PowerShellben, a szkript először létrehoz egy PSCredential
objektumot a hozzárendelt felhasználónévvel és jelszóval. A szkript ezután ezzel az objektummal hozza létre az objektumot a New-AzureAutomationCredential parancsmag hívásán keresztül. Másik lehetőségként a szkript meghívhatja a Get-Credential parancsmagot, hogy kérje meg a felhasználót, hogy írjon be egy nevet és jelszót. Tekintse meg a hitelesítő adatokat az Azure Automationben.
Azure-erőforrások kezelése Azure Automation-runbookból
Azure-erőforrásokat az Azure Automation-runbookokból a hitelesítő adategység használatával kezelhet. Az alábbiakban egy példa PowerShell-runbookot láthat, amely összegyűjti a virtuális gépek Azure-előfizetésben való leállításához és elindításához használandó hitelesítőadat-objektumot. Ez a runbook először az Azure-beli hitelesítéshez használt hitelesítő adatokat kéri Get-AutomationPSCredential
le. Ezután meghívja a Connect-AzAccount parancsmagot az Azure-hoz való csatlakozáshoz a hitelesítő adatok használatával.
Workflow Workflow
{
Param
(
[Parameter(Mandatory=$true)][ValidateNotNullOrEmpty()]
[String]
$AzureSubscriptionId,
[Parameter(Mandatory=$true)][ValidateNotNullOrEmpty()]
[String]
$AzureVMList="All",
[Parameter(Mandatory=$true)][ValidateSet("Start","Stop")]
[String]
$Action
)
# Ensures you do not inherit an AzContext in your runbook
Disable-AzContextAutosave -Scope Process
# Connect to Azure with system-assigned managed identity
$AzureContext = (Connect-AzAccount -Identity).context
# set and store context
$AzureContext = Set-AzContext -SubscriptionName $AzureContext.Subscription -DefaultProfile $AzureContext
# get credential
$credential = Get-AutomationPSCredential -Name "AzureCredential"
# Connect to Azure with credential
$AzureContext = (Connect-AzAccount -Credential $credential -TenantId $AzureContext.Subscription.TenantId).context
# set and store context
$AzureContext = Set-AzContext -SubscriptionName $AzureContext.Subscription `
-TenantId $AzureContext.Subscription.TenantId `
-DefaultProfile $AzureContext
if($AzureVMList -ne "All")
{
$AzureVMs = $AzureVMList.Split(",")
[System.Collections.ArrayList]$AzureVMsToHandle = $AzureVMs
}
else
{
$AzureVMs = (Get-AzVM -DefaultProfile $AzureContext).Name
[System.Collections.ArrayList]$AzureVMsToHandle = $AzureVMs
}
foreach($AzureVM in $AzureVMsToHandle)
{
if(!(Get-AzVM -DefaultProfile $AzureContext | ? {$_.Name -eq $AzureVM}))
{
throw " AzureVM : [$AzureVM] - Does not exist! - Check your inputs "
}
}
if($Action -eq "Stop")
{
Write-Output "Stopping VMs";
foreach -parallel ($AzureVM in $AzureVMsToHandle)
{
Get-AzVM -DefaultProfile $AzureContext | ? {$_.Name -eq $AzureVM} | Stop-AzVM -DefaultProfile $AzureContext -Force
}
}
else
{
Write-Output "Starting VMs";
foreach -parallel ($AzureVM in $AzureVMsToHandle)
{
Get-AzVM -DefaultProfile $AzureContext | ? {$_.Name -eq $AzureVM} | Start-AzVM -DefaultProfile $AzureContext
}
}
}
Következő lépések
- A hitelesítő adatok használatáról további információt az Azure Automation hitelesítő adatainak kezelése című témakörben talál.
- A modulokkal kapcsolatos információkért lásd: Modulok kezelése az Azure Automationben.
- Ha el kell indítania egy runbookot, olvassa el a Runbook indítása az Azure Automationben című témakört.
- A PowerShell részleteiért lásd a PowerShell-dokumentációt.