Azure PowerShell környezeti objektumok
Az Azure PowerShell Azure PowerShell környezeti objektumokat (Azure-környezeteket) használ az előfizetési és a hitelesítési információk tárolására. Ha több előfizetéssel is rendelkezik, az Azure-környezetekben kiválaszthatja azt az előfizetést, amelyben futtatni szeretné az Azure PowerShell-parancsmagokat. Az Azure-környezetek a bejelentkezési adatok több PowerShell-munkamenetre kiterjedő tárolására, illetve a háttérfeladatok futtatására is használhatók.
Ez a cikk az Azure-környezetek kezelését ismerteti, az előfizetések és a fiókok kezelésére nem tér ki. Ha felhasználókat, előfizetéseket, bérlőket vagy más fiókadatokat szeretne kezelni, tekintse meg a Microsoft Entra ID dokumentációját . A háttérbeli vagy párhuzamos feladatok futtatásához használt környezetek használatáról az Azure PowerShell-parancsmagok PowerShell-feladatokban való futtatása az Azure-környezetek megismerése után című témakörben olvashat.
Az Azure-beli környezeti objektumok áttekintése
Az Azure-környezetek olyan PowerShell-objektumok, amelyek a parancsok futtatásához kiválasztott aktív előfizetést, illetve az Azure-felhőkhöz való csatlakozáshoz szükséges hitelesítő adatokat képviselik. Az Azure-környezeteknek köszönhetően az Azure PowerShellnek nem kell az előfizetések közötti váltáskor újból és újból hitelesítenie a fiókját. Az Azure-környezetek a következőkből állnak:
- A fiókból, amelyet az Azure-ba való bejelentkezéshez használt a Connect-AzAccount parancsmaggal. Az Azure-környezetek a fiókok szempontjából ugyanúgy kezelik a felhasználókat, az alkalmazásazonosítókat és a szolgáltatásneveket.
- Az aktív előfizetésből, azaz egy adott bérlőhöz társított Azure-erőforrások létrehozására és futtatására vonatkozó, Microsofttal kötött szolgáltatási szerződésből. A bérlőket gyakran szervezeteknek is nevezik a dokumentációkban vagy az Active Directory használata során.
- Egy jogkivonat-gyorsítótárra, azaz egy, az Azure-felhők elérésére használt, tárolt hitelesítési jogkivonatra mutató hivatkozásból. A környezet automatikus mentésére vonatkozó beállítások határozzák meg, hogy a rendszer hol tárolja és mennyi ideig őrzi meg a jogkivonatot.
További információ ezekről a kifejezésekről: Microsoft Entra Terminológia. Az Azure-környezetek által használt hitelesítési jogkivonatok ugyanolyanok, mint az állandó munkamenet részét képező többi tárolt jogkivonat.
Amikor bejelentkezik a Connect-AzAccount
parancsmaggal, a rendszer legalább egy Azure-környezetet létrehoz az alapértelmezett előfizetéshez. A Connect-AzAccount
által visszaadott objektum a PowerShell-munkamenet hátralévő részéhez használt alapértelmezett Azure-környezet.
Azure-környezetek lekérése
Az elérhető Azure-környezeteket a Get-AzContext parancsmaggal lehet lekérni. Az elérhető környezetek listázása a ListAvailable paraméterrel:
Get-AzContext -ListAvailable
Azt is megteheti, hogy név alapján kér le egy környezetet:
Get-AzContext -Name 'mycontext'
A környezetek nevei eltérhetnek a társított előfizetés nevétől.
Fontos
Az elérhető Azure-környezetek nem mindig azonosak az elérhető előfizetésekkel. Az Azure-környezetek csak helyileg tárolt információkat jelölnek. Az előfizetéseit a Get-AzSubscription parancsmaggal kérheti le.
Új Azure-környezet létrehozása előfizetési adatokból
A Set-AzContext parancsmaggal új Azure-környezeteket hozhat létre, és be is állíthatja őket aktív környezetként. Az új Azure-környezetek létrehozásának legegyszerűbb módja a meglévő előfizetési adatok használata. A parancsmagot arra tervezték, hogy átirányított értékként kivegye a Get-AzSubscription
kimeneti objektumát, és konfiguráljon egy új Azure-környezetet:
Get-AzSubscription -SubscriptionName 'MySubscriptionName' |
Set-AzContext -Name 'MyContextName'
Azt is megteheti, hogy megadja az előfizetés nevét vagy azonosítóját, és szükség esetén a bérlőazonosítót:
Set-AzContext -Name 'MyContextName' -Subscription 'MySubscriptionName' -Tenant '00000000-0000-0000-0000-000000000000'
Ha a Név paraméter nincs megadva, akkor a rendszer az előfizetés nevét és azonosítóját használja környezetnévként az Előfizetés neve (előfizetés-azonosító) formátumban.
Az aktív Azure-környezet módosítása
Az aktív Azure-környezetet a Set-AzContext
és a Select-AzContext parancsmaggal is meg lehet változtatni. Az új Azure-környezet létrehozása című cikkben leírtaknak megfelelően új Azure-környezetet hoz létre egy előfizetéshez, Set-AzContext
ha nem létezik, majd az aktív környezetet erre váltja.
Select-AzContext
csak meglévő Azure-környezetekben használható, és a használathoz Set-AzContext -Context
hasonlóan működik, de a csővezetékekhez való használatra lett kialakítva:
Set-AzContext -Context $(Get-AzContext -Name 'mycontext') # Set a context with an inline Azure context object
Get-AzContext -Name 'mycontext' | Select-AzContext # Set a context with a piped Azure context object
Sok más fiók- és környezetkezelési parancshoz hasonlóan az Azure PowerShellben is, Set-AzContext
és Select-AzContext
támogatja a Hatókör paramétert, így szabályozhatja, hogy mennyi ideig aktív a környezet. A hatókör lehetővé teszi egyetlen munkamenet aktív környezetének módosítását az alapértelmezett beállítás módosítása nélkül:
Get-AzContext -Name 'mycontext' | Select-AzContext -Scope Process
A teljes PowerShell-munkamenet környezeteinek váltásának elkerülése érdekében az AzContext paraméterrel rendelkező Azure PowerShell-parancsok futtathatók egy adott környezetben:
$context = Get-AzContext -Name "mycontext"
New-AzVM -Name ExampleVM -AzContext $context
A környezetek Azure PowerShell-parancsmagokkal való használatának másik fő felhasználási módja a parancsok háttérbeli futtatása. A PowerShell-feladatok Azure PowerShell-lel történő futtatásával kapcsolatos további információkért lásd: Azure PowerShell-parancsmagok futtatása PowerShell-feladatokban.
Azure-környezetek több PowerShell-munkamenetre kiterjedő mentése
A rendszer alapértelmezés szerint menti az Azure-környezeteket, hogy több PowerShell-munkamenetben is használhatók legyenek. Az alábbiak szerint módosíthatja ezt a viselkedést:
Jelentkezzen be a
-Scope Process
és aConnect-AzAccount
használatával.Connect-AzAccount -Scope Process
A bejelentkezés részeként visszaadott Azure-környezet csak az aktuális munkamenetre érvényes, és az Azure PowerShell-környezet automatikus mentési beállításától függetlenül nem lesz automatikusan mentve.
Tiltsa le a környezet automatikus mentését az Azure PowerShellben a Disable-AzContextAutosave parancsmaggal. A környezet automatikus mentésének letiltása nem törli a tárolt jogkivonatokat. A tárolt Azure-beli környezeti adatok törlésével kapcsolatban lásd az Azure-környezetek és hitelesítő adatok eltávolításával foglalkozó szakaszt.
Explicit módon engedélyezze az Azure-környezet automatikus mentését. Ezt az Enable-AzContextAutosave parancsmaggal teheti meg. Ha engedélyezve van az automatikus mentés, a rendszer helyileg tárolja a felhasználói környezeteket a későbbi PowerShell-munkamenetekhez.
Mentse manuálisan a környezeteket a Save-AzContext parancsmaggal a későbbi PowerShell-munkamenetekben való használathoz, amelyekbe az Import-AzContext parancsmaggal tölthetők be:
Save-AzContext -Path current-context.json # Save the current context Save-AzContext -Profile $profileObject -Path other-context.json # Save a context object Import-AzContext -Path other-context.json # Load the context from a file and set it to the current context
Figyelmeztetés
A környezet automatikus mentésének letiltása nem törli a mentett környezeti adatokat. A tárolt adatok eltávolításához használja a Clear-AzContext parancsmagot. A mentett környezetek eltávolításával kapcsolatos további információkért lásd a környezetek és hitelesítő adatok eltávolításával foglalkozó szakaszt.
Ezek a parancsok támogatják a Hatókör paramétert, amelynek értéke Process
csak az aktuális futó folyamatra érvényes. Adja meg például a következőt, ha gondoskodni szeretne róla, hogy a rendszer ne mentse az újonnan létrehozott környezeteket a PowerShell-munkamenetből való kilépés után:
Disable-AzContextAutosave -Scope Process
$context2 = Set-AzContext -Subscription 'sub-id' -Tenant 'other-tenant'
A Windows az $env:USERPROFILE\.Azure
könyvtárban tárolja a környezetek adatait és a jogkivonatokat, más platformok pedig a $HOME/.Azure
könyvtárban. A bizalmas információk, például az előfizetés-azonosítók és a bérlőazonosítók továbbra is elérhetők a tárolt információkban, naplókon vagy mentett környezeteken keresztül. A tárolt adatok törlésével kapcsolatban tekintse meg a környezetek és hitelesítő adatok eltávolítását ismertető szakaszt.
Az Azure-környezetek és a tárolt hitelesítő adatok eltávolítása
Azure-környezetek és hitelesítő adatok törlése:
Jelentkezzen ki a fiókból a Disconnect-AzAccount parancsmaggal. Bármely fiókból kijelentkezhet a fiók vagy a környezet megadásával:
Disconnect-AzAccount # Disconnect active account Disconnect-AzAccount -Username 'user@contoso.com' # Disconnect by account name Disconnect-AzAccount -ContextName 'subscription2' # Disconnect by context name Disconnect-AzAccount -AzureContext $contextObject # Disconnect using context object information
A kapcsolat bontásakor a rendszer mindig eltávolítja a tárolt hitelesítési jogkivonatokat, és törli a leválasztott felhasználóhoz vagy környezethez társított mentett környezeteket.
Használja a Clear-AzContext parancsmagot. Ez a parancsmag mindig eltávolítja a tárolt környezeteket, hitelesítési jogkivonatokat és kijelentkezteti Önt.
Távolítson el egy környezetet a Remove-AzContext parancsmaggal:
Remove-AzContext -Name 'mycontext' # Remove by name Get-AzContext -Name 'mycontext' | Remove-AzContext # Remove by piping Azure context object
Ha eltávolítja az aktív környezetet, akkor a rendszer leválasztja az Azure-ról, és újra meg kell adnia a következőt
Connect-AzAccount
: .
Lásd még
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: