Oktatás
Tanúsítvány
Certifié Microsoft : Azure Administrator Associate - Certifications
Démontrer les compétences clés pour configurer, gérer, sécuriser et administrer des fonctions professionnelles clés dans Microsoft Azure.
Ezt a böngészőt már nem támogatjuk.
Frissítsen a Microsoft Edge-re, hogy kihasználhassa a legújabb funkciókat, a biztonsági frissítéseket és a technikai támogatást.
A kontextusváltás azt jelenti, hogy az egyik folyamat kontextusa módosítja a kontextust egy másik folyamatban. Az Azure-környezet az Azure PowerShell-parancsmagok célját meghatározó adatok halmaza. A környezet a következő tulajdonságokból áll:
Tulajdonság | Leírás |
---|---|
Név | A környezet neve. |
Számla | Az Azure-ral folytatott kommunikáció hitelesítéséhez használt felhasználónév vagy szolgáltatásnév. |
Környezet | Az Azure globális vagy egy nemzeti Azure-felhőt jelöl, például az Azure Governmentt. Megadhatja egy hibrid felhőplatformot is, például az Azure Stacket. |
Előfizetés | A kezelni kívánt erőforrásokat tartalmazó Azure-előfizetést jelöli. |
Bérlő | A Microsoft Entra ID dedikált és megbízható példánya, amely egyetlen szervezetet jelöl. |
Igazolás | Az Azure által a személyazonosság ellenőrzéséhez és az Azure-beli erőforrásokhoz való hozzáférés engedélyezésének megerősítéséhez használt információk. |
Amikor egy olyan fiók jelentkezik be, amely több előfizetéshez is hozzáfér, az előfizetések bármelyike hozzáadható a felhasználó kontextusához. A megfelelő előfizetés garantálásához deklarálnia kell azt a csatlakozáskor. Használja például a következőt Add-AzAccount -Credential $Cred -subscription 'aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e'
: . Problémák merülhetnek fel azonban, ha az egyik előfizetést kezelő runbookok ugyanabban a tesztkörnyezeti folyamatban futnak, mint a többi runbook, amelyek ugyanabból az Automation-fiókból egy másik előfizetés erőforrásait kezelik. Ez azt jelenti, hogy az egyik runbook által végzett kontextusmódosítások hatással lehetnek az alapértelmezett kontextust használó többi runbookra is. Mivel a környezet olyan információkat tartalmaz, mint a használni kívánt hitelesítő adatok és a megcélzott előfizetés, a parancsmagok helytelen előfizetést célozhatnak meg, ami vagy engedélyek hibáit eredményezheti not found
. Ezt a problémát környezetváltásnak nevezzük.
Annak érdekében, hogy a runbookok ne fussanak a nem megfelelő előfizetésben lévő erőforrásokon, tekintse át az alábbi javaslatokat:
Disable-AzContextAutosave -Scope Process
.-DefaultProfile
paramétert. Ez a paraméter az összes Az- és Azure Resource Manager- (AzureRM-) parancsmaghoz hozzáadva több szkript futtatását támogatja ugyanabban a folyamatban, így minden parancsmaghoz megadhatja, hogy melyik környezet legyen használva. Létrehozásakor és minden módosítás után mentse a kontextusobjektumot a runbookban. Ezután hivatkozzon rá minden olyan hívásban, amely az Az- vagy az AzureRM- parancsmaggal történt. Például: $AzureContext = Set-AzContext -SubscriptionId $subID
.Get-AzVM -ResourceGroupName "myGroup" -DefaultProfile $AzureContext
a PowerShell-parancsmagnak.Íme egy PowerShell-runbook kódrészlete, amely egy rendszer által hozzárendelt felügyelt identitást használ a környezetváltás elkerülésére vonatkozó javaslatok alapján.
# 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
# Pass context object - even though the context had just been set
# This is the step that guarantees the context will not be switched.
Get-AzVM -ResourceGroupName "resourceGroupName" -DefaultProfile $AzureContext | Select Name
Bár előfordulhat, hogy nem tapasztal problémát, ha nem követi ezeket a javaslatokat, a lehetőség létezik. A helyzet hátterében az időzítés áll; attól függ, hogy az egyes runbookok mit csinálnak abban az időpontban, amikor a másik runbook átváltja a környezetét. Íme néhány lehetséges hibaüzenet. Ezeket a hibaüzeneteket azonban a környezeten kívüli váltási feltételek okozhatják.
The subscription named <subscription name> cannot be found.
Get-AzVM : The client '<clientid>' with object id '<objectid>' does not have authorization to perform action 'Microsoft.Compute/virtualMachines/read' over scope '/subscriptions/<subscriptionIdOfSubscriptionWhichDoesntContainTheVM>/resourceGroups/REsourceGroupName/providers/Microsoft.Compute/virtualMachines/VMName '.
ErrorCode: AuthorizationFailed
StatusCode: 403
ReasonPhrase: Forbidden Operation
ID : <AGuidRepresentingTheOperation> At line:51 char:7 + $vm = Get-AzVM -ResourceGroupName $ResourceGroupName -Name $UNBV... +
Get-AzureRmResource : Resource group "SomeResourceGroupName" could not be found.
... resources = Get-AzResource -ResourceGroupName $group.ResourceGro ...
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : CloseError: (:) [Get-AzResource], CloudException
+ FullyQualifiedErrorId : Microsoft.Azure.Commands.ResourceManager.Cmdlets.Implementation.GetAzureResourceCmdlet
Oktatás
Tanúsítvány
Certifié Microsoft : Azure Administrator Associate - Certifications
Démontrer les compétences clés pour configurer, gérer, sécuriser et administrer des fonctions professionnelles clés dans Microsoft Azure.
Dokumentáció
Résoudre des problèmes de runbook Azure Automation
Cet article explique comment dépanner et résoudre des problèmes liés aux runbooks Azure Automation.