Rövid útmutató: Azure-szerepkör hozzárendelése ARM-sablonnal
Az Azure szerepköralapú hozzáférés-vezérlés (Azure RBAC) az Azure-erőforrásokhoz való hozzáférés kezelésének módját jelenti. Ebben a rövid útmutatóban létrehoz egy erőforráscsoportot, és hozzáférést biztosít a felhasználóknak az erőforráscsoportban lévő virtuális gépek létrehozásához és kezeléséhez. Ez a rövid útmutató egy Azure Resource Manager-sablont (ARM-sablont) használ a hozzáférés biztosításához.
Az Azure Resource Manager-sablon egy JavaScript Object Notation (JSON) fájl, amely meghatározza a projekt infrastruktúráját és konfigurációját. A sablon deklaratív szintaxist használ. Az üzembe helyezés létrehozásához szükséges programozási parancsok sorozatának megírása nélkül írhatja le a tervezett üzembe helyezést.
Ha a környezet megfelel az előfeltételeknek, és már ismeri az ARM-sablonokat, kattintson az Üzembe helyezés az Azure-ban gombra. A sablon az Azure Portalon fog megnyílni.
Előfeltételek
Az Azure-szerepkörök hozzárendeléséhez és a szerepkör-hozzárendelések eltávolításához a következőkkel kell rendelkeznie:
- Ha még nincs Azure-előfizetése, kezdés előtt hozzon létre egy ingyenes fiókot.
Microsoft.Authorization/roleAssignments/write
ésMicrosoft.Authorization/roleAssignments/delete
engedélyek, például szerepköralapú hozzáférés-vezérlési rendszergazda- Szerepkör hozzárendeléséhez három elemet kell megadnia: a biztonsági tagot, a szerepkördefiníciót és a hatókört. Ebben a rövid útmutatóban a biztonsági tag Ön vagy a címtár egy másik felhasználója, a szerepkör definíciója a Virtuálisgép-közreműködő, a hatókör pedig egy Ön által megadott erőforráscsoport.
A sablon áttekintése
Az ebben a gyorsútmutatóban használt sablon az Azure-gyorssablonok közül származik. A sablon két paraméterrel és egy erőforrásszakaszsal rendelkezik. Az erőforrások szakaszban figyelje meg, hogy a szerepkör-hozzárendelés három eleme van: a biztonsági tag, a szerepkördefiníció és a hatókör.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.25.53.49325",
"templateHash": "15160858749942476090"
}
},
"parameters": {
"roleDefinitionID": {
"type": "string",
"metadata": {
"description": "Specifies the role definition ID used in the role assignment."
}
},
"principalId": {
"type": "string",
"metadata": {
"description": "Specifies the principal ID assigned to the role."
}
}
},
"variables": {
"roleAssignmentName": "[guid(parameters('principalId'), parameters('roleDefinitionID'), resourceGroup().id)]"
},
"resources": [
{
"type": "Microsoft.Authorization/roleAssignments",
"apiVersion": "2022-04-01",
"name": "[variables('roleAssignmentName')]",
"properties": {
"roleDefinitionId": "[resourceId('Microsoft.Authorization/roleDefinitions', parameters('roleDefinitionID'))]",
"principalId": "[parameters('principalId')]"
}
}
],
"outputs": {
"name": {
"type": "string",
"value": "[variables('roleAssignmentName')]"
},
"resourceGroupName": {
"type": "string",
"value": "[resourceGroup().name]"
},
"resourceId": {
"type": "string",
"value": "[resourceId('Microsoft.Authorization/roleAssignments', variables('roleAssignmentName'))]"
}
}
}
A sablonban definiált erőforrás a következő:
A sablon üzembe helyezése
Jelentkezzen be az Azure Portalra.
Határozza meg az Azure-előfizetéséhez társított e-mail-címét. Vagy állapítsa meg egy másik felhasználó e-mail-címét a címtárban.
Nyissa meg a PowerShellhez készült Azure Cloud Shellt.
Másolja és illessze be a következő szkriptet a Cloud Shellbe.
$resourceGroupName = Read-Host -Prompt "Enter a resource group name (i.e. ExampleGrouprg)" $emailAddress = Read-Host -Prompt "Enter an email address for a user in your directory" $location = Read-Host -Prompt "Enter a location (i.e. centralus)" $roleAssignmentName = New-Guid $principalId = (Get-AzAdUser -Mail $emailAddress).id $roleDefinitionId = (Get-AzRoleDefinition -name "Virtual Machine Contributor").id $templateUri = "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.authorization/rbac-builtinrole-resourcegroup/azuredeploy.json" New-AzResourceGroup -Name $resourceGroupName -Location $location New-AzResourceGroupDeployment -ResourceGroupName $resourceGroupName -TemplateUri $templateUri -roleDefinitionID $roleDefinitionId -principalId $principalId
Adjon meg egy erőforráscsoportnevet, például ExampleGrouprg nevet.
Adjon meg egy e-mail-címet saját magának vagy egy másik felhasználónak a címtárában.
Adjon meg egy helyet az erőforráscsoportnak, például a centralusnak.
Ha szükséges, nyomja le az Enter billentyűt a New-AzResourceGroupDeployment parancs futtatásához.
A New-AzResourceGroup parancs létrehoz egy új erőforráscsoportot, és a New-AzResourceGroupDeployment parancs üzembe helyezi a sablont a szerepkör-hozzárendelés hozzáadásához.
A következőhöz hasonló kimenetnek kell megjelennie:
PS> New-AzResourceGroupDeployment -ResourceGroupName $resourceGroupName -TemplateUri $templateUri -roleAssignmentName $roleAssignmentName -roleDefinitionID $roleDefinitionId -principalId $principalId DeploymentName : azuredeploy ResourceGroupName : ExampleGrouprg ProvisioningState : Succeeded Timestamp : 5/22/2020 9:01:30 PM Mode : Incremental TemplateLink : Uri : https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.authorization/rbac-builtinrole-resourcegroup/azuredeploy.json ContentVersion : 1.0.0.0 Parameters : Name Type Value ==================== ========================= ========== roleDefinitionID String 9980e02c-c2be-4d73-94e8-173b1dc7cf3c principalId String {principalId} Outputs : DeploymentDebugLogLevel :
Üzembe helyezett erőforrások áttekintése
Az Azure Portalon nyissa meg a létrehozott erőforráscsoportot.
A bal oldali menüben kattintson a Hozzáférés-vezérlés (IAM) elemre.
Kattintson a Szerepkör-hozzárendelések fülre.
Ellenőrizze, hogy a virtuálisgép-közreműködői szerepkör hozzá van-e rendelve a megadott felhasználóhoz.
Az erőforrások eltávolítása
A létrehozott szerepkör-hozzárendelés és erőforráscsoport eltávolításához kövesse az alábbi lépéseket.
Másolja és illessze be a következő szkriptet a Cloud Shellbe.
$emailAddress = Read-Host -Prompt "Enter the email address of the user with the role assignment to remove" $resourceGroupName = Read-Host -Prompt "Enter the resource group name to remove (i.e. ExampleGrouprg)" $principalId = (Get-AzAdUser -Mail $emailAddress).id Remove-AzRoleAssignment -ObjectId $principalId -RoleDefinitionName "Virtual Machine Contributor" -ResourceGroupName $resourceGroupName Remove-AzResourceGroup -Name $resourceGroupName
Adja meg az eltávolítani kívánt szerepkör-hozzárendeléssel rendelkező felhasználó e-mail-címét.
Adja meg az erőforráscsoport nevét, amely eltávolítható, például ExampleGrouprg.
Ha szükséges, nyomja le az Enter billentyűt a Remove-AzResourceGroup parancs futtatásához.
Írja be az Y értéket az erőforráscsoport eltávolításának megerősítéséhez.
Következő lépések
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: