Azure PowerShell környezeti objektumok

Azure PowerShell Azure PowerShell környezeti objektumokat (Azure környezeteket) használ az előfizetési és hitelesítési adatok tárolására. Ha több előfizetéshez is rendelkezik hozzáféréssel, Azure környezetek lehetővé teszik az előfizetés kiválasztását Azure PowerShell parancsmagok futtatásához. Azure környezetek a bejelentkezési adatok több PowerShell-munkamenetben való tárolására és háttérfeladatok futtatására is használhatók.

Ez a cikk Azure környezetek kezelését ismerteti, nem az előfizetések vagy fiókok kezelését. 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ér- vagy párhuzamos feladatok futtatásához használt környezetek használatáról a Run Azure PowerShell parancsmagok futtatása a PowerShell-feladatokban című témakörben olvashat, miután megismerkedett Azure környezetekkel.

Azure környezeti objektumok áttekintése

Azure környezetek olyan PowerShell-objektumok, amelyek az aktív előfizetést jelentik a parancsok futtatásához, valamint az Azure felhőhöz való csatlakozáshoz szükséges hitelesítési információkat tartalmazzák. Azure környezetek esetében a Azure PowerShell nem kell minden előfizetésváltáskor újrahitelesítenie a fiókját. A Azure környezet a következőkből áll:

  • A fiók, amellyel bejelentkeztek az Azure-ba Connect-AzAccount. Azure környezetek fiók 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és, egy szolgáltatási szerződés a Microsofttal az Azure erőforrások létrehozására és futtatására, amelyek egy bérlőhöz vannak társítva. A bérlőket gyakran szervezeteknek nevezik a dokumentációban, vagy ha a Microsoft Entra-val dolgoznak.
  • Hivatkozás egy token gyorsítótárra, amely egy Azure felhőhöz való hozzáféréshez használt tárolt hitelesítési jogkivonat. A környezet automatikus mentési beállításai határozzák meg, hogy hol tárolódik a jogkivonat, és meddig marad meg.

Ezekről a kifejezésekről további információt a Microsoft Entra Terminológia című témakörben talál. A Azure környezetek által használt hitelesítési jogkivonatok megegyeznek az állandó munkamenet részét képező többi tárolt jogkivonattal.

Ha Connect-AzAccount használatával jelentkezik be, legalább egy Azure környezet jön létre az alapértelmezett előfizetéshez. A Connect-AzAccount által visszaadott objektum a PowerShell-munkamenet többi részében használt alapértelmezett Azure környezet.

Azure környezetek lekérése

Az elérhető Azure környezetek lekérése a Get-AzContext parancsmaggal lehetséges. Az elérhető környezetek listázása a ListAvailable paraméterrel:

Get-AzContext -ListAvailable

Vagy adjon meg egy kontextust név szerint:

Get-AzContext -Name MyContextName

A környezetnevek eltérhetnek a társított előfizetés nevétől. A környezet nevének meghatározásához használja a Név tulajdonság értékét, amely alapértelmezés szerint nem jelenik meg.

Get-AzContext -ListAvailable | Select-Object -Property *

Important

Az elérhető Azure környezetek nem mindig az elérhető előfizetéseid. Azure környezetek csak helyileg tárolt információkat jelölnek. Előfizetéseit a Get-AzSubscription parancsmaggal szerezheti be.

Új Azure-környezet létrehozása előfizetési adatokból

A Set-AzContext parancsmaggal új Azure környezeteket hozhat létre és állíthat be 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 Set-AzContext parancsmag úgy lett kialakítva, hogy a kimeneti objektumot a Get-AzSubscription-ból származó csőértékként használja, és konfiguráljon egy új Azure környezetet:

Get-AzSubscription -SubscriptionName MySubscriptionName |
  Set-AzContext -Name MyContextName

Vagy adja meg az előfizetés nevét vagy azonosítóját és a bérlőazonosítót, ha szükséges:

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 a formátum Subscription Name (subscription-id)környezeti neveként.

Az aktív Azure környezet módosítása

A Set-AzContext és a Select-AzContext egyaránt használható az aktív Azure környezet módosítására. Az Új Azure környezet létrehozása című részben leírtak szerint, ha egy előfizetéshez nem létezik, akkor új Azure környezetet hoz létre, majd az aktív környezetet arra az újra váltja át.

Select-AzContext csak meglévő Azure környezetekben használható, és hasonlóan működik a Set-AzContext -Context használatához, de csőrendszerhez való használatra tervezték:

Set-AzContext -Context (Get-AzContext -Name MyContextName) # Set a context with an inline Azure context object
Get-AzContext -Name MyContextName | Select-AzContext # Set a context with a piped Azure context object

A Azure PowerShell számos más fiók- és környezetkezelési parancsához hasonlóan a Set-AzContext és a Select-AzContext támogatja a Scope paramétert, így szabályozhatja, hogy a környezet mennyi ideig aktív. 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 MyContextName | Select-AzContext -Scope Process

A teljes PowerShell-munkamenet környezeteinek váltásának elkerülése érdekében Azure PowerShell AzContext paraméterrel rendelkező parancsok futtathatók egy adott környezetben:

$context = Get-AzContext -Name MyContextName
New-AzVM -Name ExampleVM -AzContext $context

A környezetek Azure PowerShell parancsmagokkal való használatának másik elsődleges célja a háttérparancsok futtatása. A PowerShell-feladatok Azure PowerShell használatával történő futtatásáról további információt a Run Azure PowerShell parancsmagok a PowerShell-feladatokban című témakörben talál.

Azure-környezetek mentése PowerShell-munkamenetekben

Alapértelmezés szerint a Azure környezetek a PowerShell-munkamenetek közötti használatra vannak mentve. Ezt a viselkedést a következő módokon módosíthatja:

  • Jelentkezzen be a következővel -Scope ProcessConnect-AzAccount: .

    Connect-AzAccount -Scope Process
    

    A bejelentkezés részeként visszaadott Azure környezet érvényes az aktuális munkamenetre only és a 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 Azure PowerShell a Disable-AzContextAutosave parancsmaggal. A kontextus automatikus mentésének letiltása nem törli a tárolt tokeneket. A tárolt Azure környezeti adatok törléséről a Azure Környezetek és a tárolt hitelesítő adatok törlése című témakörben olvashat.

  • Explicit módon engedélyezheti Azure környezet automatikus mentését a Enable-AzContextAutosave parancsmaggal. 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 el manuálisan a környezeteket a Save-AzContext használatával, hogy a jövőbeli PowerShell-munkamenetek során betöltésre kerüljenek, ahol a Import-AzContext segítségével tölthetők be.

    Save-AzContext -Path current-context.json # Save the current context
    Import-AzContext -Path other-context.json # Load the context from a file and set it to the current context
    

Warning

A környezet automatikus mentésének letiltása nem törli a mentett tárolt környezeti információkat. A tárolt adatok eltávolításához használja a Clear-AzContext parancsmagot. A mentett környezetek eltávolításáról további információt a Környezetek és tárolt hitelesítő adatok Azure törlése című témakörben talál.

Ezek a parancsok támogatják a Hatókör paramétert, amelynek értéke Process csak az aktuális futó folyamatra érvényes. Ha például azt szeretné, hogy az újonnan létrehozott környezetek ne legyenek mentve a PowerShell-munkamenetből való kilépés után:

Disable-AzContextAutosave -Scope Process
Set-AzContext -Subscription 'Subscription ID or Name' -Tenant 00000000-0000-0000-0000-000000000000

A környezet kontextus információkat és hozzáférési tokeneket a $env:USERPROFILE\.Azure könyvtár tárolja a Windows rendszeren, és $HOME/.Azure más platformokon. 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éről a A Azure környezetek és a tárolt hitelesítő adatok törlése című témakörben olvashat.

Azure környezetek és tárolt hitelesítő adatok eltávolítása

Azure környezetek és hitelesítő adatok törlése:

  • Jelentkezzen ki egy fiókból.Disconnect-AzAccount Bármelyik fiókból kijelentkezhet fiók vagy környezet szerint:

    Disconnect-AzAccount # Disconnect active account
    Disconnect-AzAccount -Username 'user@contoso.com' # Disconnect by account name
    Disconnect-AzAccount -ContextName MyContextName # Disconnect by context name
    
    $context = Get-AzContext
    Disconnect-AzAccount -AzureContext $context # Disconnect using context object information
    

    A leválasztás 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. Ez a parancsmag mindig eltávolítja a tárolt környezeteket és hitelesítési tokeneket, és kijelentkezik.

  • Környezet eltávolítása a következővel Remove-AzContext:

    Remove-AzContext -Name MyContextName # Remove by name
    Get-AzContext -Name MyContextName | Remove-AzContext # Remove by piping an Azure context object
    

    Ha eltávolítja az aktív környezetet, leválasztja az Azure-t, és újra hitelesítenie kell Connect-AzAccount segítségével.

Lásd még