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


Azure PowerShell-környezetobjektumok

Az Azure PowerShell Azure PowerShell-környezetobjektumok (Azure-környezetek) használatával tárolja az előfizetési és hitelesítési adatokat. 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 információk több PowerShell-munkamenetben való tárolására és háttérfeladatok futtatására is használhatók.

Ez a cikk az 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 Microsoft Entra-azonosító dokumentációját. A háttér- vagy párhuzamos feladatok futtatásához használt környezetek használatáról az Azure-környezetek megismerése után Azure PowerShell-parancsmagok futtatása a PowerShell-feladatokban című témakörben olvashat.

Az Azure környezeti objektumainak á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örnyezetekben az Azure PowerShellnek nem kell újrahitelesítenie a fiókját minden előfizetés váltásakor. Az Azure-környezetek a következőkből állnak:

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

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 megegyeznek az állandó munkamenet részét képező többi tárolt jogkivonattal.

Amikor bejelentkezik a Connect-AzAccountfiókkal, legalább egy Azure-környezet jön létre az alapértelmezett előfizetés számára. 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

Az összefüggésnevek 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 egyeznek meg az Ön előfizetéseivel. Az Azure-környezetek csak helyileg tárolt információkat jelölnek. Az előfizetéseket 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 van kialakítva, hogy a Get-AzSubscription kimeneti objektumát vezetékként használva egy új Azure-környezetet konfiguráljon.

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

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

Az aktív Azure-környezet módosításához Set-AzContext és Select-AzContext is használható. Az Új Azure-környezet létrehozásacímű cikkben leírtak szerint Set-AzContext új Azure-környezetet hoz létre egy előfizetéshez, ha nem létezik, majd az aktív környezetet erre a környezetre váltja.

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

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

Az Azure PowerShell számos más fiók- és környezetkezelési parancsához hasonlóan Set-AzContext és Select-AzContext támogatja a Hatókör paramétert, így szabályozhatja, hogy mennyi ideig aktív a környezet. 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 egy 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. Ha többet szeretne tudni a PowerShell-feladatok Azure PowerShell-lel való futtatásáról, olvassa el Azure PowerShell-parancsmagok futtatása a PowerShell-feladatok.

Azure-környezetek mentése PowerShell-munkamenetekben

Alapértelmezés szerint az 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 -Scope ProcessConnect-AzAccounthasználatával.

    Connect-AzAccount -Scope Process
    

    A bejelentkezés részeként visszaadott Azure-környezet csak az aktuális munkamenetre érvényes csak, és nem kerül automatikus mentésre, függetlenül az Azure PowerShell-környezet automatikus mentési beállításaitól.

  • Tiltsa le a környezet automatikus mentését az Azure PowerShellben a Disable-AzContextAutosave parancsmaggal. A környezeti automatikus mentés letiltása nem törli a tárolt tokeneket. A tárolt Azure-környezetek adatainak törléséről a Azure-környezetek és a tárolt hitelesítő adatok eltávolításací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.

  • Mentse el manuálisan a kontextusokat Save-AzContext, hogy a jövőbeli PowerShell-munkamenetek során használhatók legyenek, ahol Import-AzContext-gyel betölthetők:

    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 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 Az Azure-környezetek és a tárolt hitelesítő adatok eltávolításacímű témakörben talál.

Ezen parancsok mindegyike támogatja a Hatókör paramétert, amely Process értéket vehet fel, hogy csak a jelenleg futó folyamatra vonatkozzon. 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 kontextus-információk és a jogkivonatok a Windows rendszer $env:USERPROFILE\.Azure könyvtárában, más platformokon pedig a $HOME/.Azure könyvtárban vannak tárolva. 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 Azure-környezetek és a tárolt hitelesítő adatok eltávolításací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 a(z) Disconnect-AzAccountfiókból. 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 tokent, és kijelentkeztet.

  • Az adott környezet eltávolítása a Remove-AzContextszámúval.

    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, lekapcsol az Azure-ról, és újrahitelesíteni kell a Connect-AzAccount-val.

Lásd még: