Megosztás a következőn keresztül:


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éshez is hozzáfér, az Azure-környezetek lehetővé teszik az előfizetés kiválasztását az Azure PowerShell-parancsmagok futtatásához. 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 az aktív előfizetést képviselik a parancsok futtatásához, valamint az Azure-felhőhöz való csatlakozáshoz szükséges hitelesítési információk. 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ók , amellyel bejelentkezett az Azure-ba Connect-AzAccount. 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 nevezik szervezetnek a dokumentációban vagy a Microsoft Entra használatakor.
  • 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ési beállításai határozzák meg, hogy hol és mennyi ideig tárolja 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

A rendszer lekéri az elérhető Azure-környezeteket a Get-AzContext parancsmaggal. 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 MyContextName

A környezetek nevei 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 *

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. Előfizetéseit a Get-AzSubscription parancsmaggal szerezheti be.

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

A Set-AzContext parancsmag az új Azure-környezetek aktív környezetként való létrehozására és beállítására szolgál. 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 Get-AzSubscription vezetékes értékként használja, é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 a formátum Subscription Name (subscription-id)környezeti neveként.

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

Select-AzContext Mindkettő Set-AzContext használható az aktív Azure-környezet módosításához. 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 -Contexthasonlóan működik, de a csővezetékekhez való használatra lett kialakítva:

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

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 MyContextName | 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 MyContextName
New-AzVM -Name ExampleVM -AzContext $context

Az Azure PowerShell-parancsmagok környezeteinek másik elsődleges használata a háttérparancsok 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. Ezt a viselkedést a következő módokon módosíthatja:

  • Jelentkezzen be a -Scope Process és a Connect-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 menti automatikusan.

  • 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-környezetek adatainak törléséről az Azure-környezetek és a tárolt hitelesítő adatok eltávolítása című témakörben olvashat.

  • Az Azure-környezet automatikus mentésének explicit engedélyezése a Enable-AzContextAutosave parancsmaggal engedélyezhető. 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.

  • A jövőbeli PowerShell-munkamenetekben használandó környezetek Save-AzContext manuális mentése, ahol a következőkkel Import-AzContexttö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
    

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áról további információt az Azure-környezetek és a tárolt hitelesítő adatok eltávolítása 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. 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
Set-AzContext -Subscription 'Subscription ID or Name' -Tenant 00000000-0000-0000-0000-000000000000

A környezetinformációkat és a jogkivonatokat a $env:USERPROFILE\.Azure windowsos címtárban és $HOME/.Azure más platformokon tárolja a rendszer. 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 az Azure-környezetek és a tárolt hitelesítő adatok eltávolítása című témakörben olvashat.

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 egy fiókból.Disconnect-AzAccount 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 MyContextName # Disconnect by context name
    
    $context = Get-AzContext
    Disconnect-AzAccount -AzureContext $context # 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 az Clear-AzContext parancsot. Ez a parancsmag mindig eltávolítja a tárolt környezeteket és hitelesítési jogkivonatokat, és kijelentkezteti Önt.

  • 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-ról, és újra meg kell adnia a következőt Connect-AzAccount: .

Lásd még