Accesso con privilegi elevati come amministratore tenant con il Controllo degli accessi in base al ruoloElevate access as a tenant admin with Role-Based Access Control

Il Controllo degli accessi in base al ruolo consente agli amministratori tenant di ottenere i privilegi elevati temporanei per l'accesso in modo da poter concedere autorizzazioni superiori rispetto al normale.Role-based Access Control helps tenant administrators get temporary elevations in access so that they can grant higher permissions than normal. Un amministratore tenant può elevare se stesso al ruolo di Amministratore Accesso utenti quando necessario.A tenant admin can elevate herself to the User Access Administrator role when needed. Tale ruolo offre all'amministratore tenant le autorizzazioni per concedere a se stesso o ad altri i ruoli nell'ambito del "/".That role gives the tenant admin permissions to grant herself or others roles at the "/" scope.

Questa funzionalità è importante perché consente all'amministratore tenant di visualizzare tutte le sottoscrizioni presenti in un'organizzazione.This feature is important because it allows the tenant admin to see all the subscriptions that exist in an organization. Consente inoltre alle app di automazione, ad esempio la fatturazione e il controllo, di accedere a tutte le sottoscrizioni e offrire una visualizzazione accurata dello stato dell'organizzazione per la gestione della fatturazione o degli asset.It also allows for automation apps like invoicing and auditing to access all the subscriptions and provide an accurate view of the state of the organization for billing or asset management.

Usare elevateAccess per l'accesso ai tenant con l'interfaccia di amministrazione di Azure ADUse elevateAccess for tenant access with Azure AD admin center

  1. Passare all'interfaccia di amministrazione di Azure Active Directory e accedere con le proprie credenziali.Go to the Azure Active Directory admin center and log in with you credentials.

  2. Scegliere Proprietà dal menu di sinistra di Azure AD.Choose Properties from the Azure AD left menu.

  3. Nel pannello Proprietà cercare Gli amministratori globali possono gestire le sottoscrizioni di Azure, scegliere , quindi Salva.In the Properties blade, find Global admin can manage Azure Subscriptions, choose Yes, then Save.

    Importante

    Se si sceglie , si assegna il ruolo Amministratore Accesso utenti a livello di radice "/" (ambito radice) all'utente con cui è stata effettuata la connessione al portale.When you choose Yes, assigns the User Access Administrator role at the Root "/" (Root Scope) for the user with which you are currently logged into the Portal. Ciò consente all'utente di visualizzare tutte le altre sottoscrizioni di Azure.This allows the user to see all other Azure Subscriptions.

    Nota

    Se si sceglie No, si rimuove il ruolo Amministratore Accesso utente a livello di radice "/" (ambito radice) dall'utente con cui è stata effettuata la connessione al portale.When you choose No, removes the User Access Administrator role at the Root "/" (Root Scope) for the user with which you are currently logged into the Portal.

Suggerimento

Questa funzionalità può dare l'impressione di essere una proprietà globale per Azure Active Directory, ma in realtà funziona per utente con riferimento all'utente connesso in quel momento.The impression is that this is a Global Property for Azure Active Directory, however, it functions on a per-user basis for the currently logged on user. Gli utenti con diritti di amministratore globale in Azure Active Directory possono chiamare la funzionalità elevateAccess per l'utente con cui è stata effettuata la connessione all'interfaccia di amministrazione di Azure Active Directory.When you have Global Administrator rights in Azure Active Directory, you can invoke the elevateAccess feature for the user which you are currently logged into Azure Active Directory Admin Center.

Screenshot dell'interfaccia di amministrazione di Azure AD - Proprietà - Gli amministratori globali possono gestire le sottoscrizioni di Azure

Visualizzare le assegnazioni di ruolo nell'ambito "/" tramite PowerShellView role assignments at the "/" scope using PowerShell

Per visualizzare l'assegnazione Amministratore Accesso utenti nell'ambito / , usare il cmdlet PowerShell Get-AzureRmRoleAssignment.To view the User Access Administrator assignment at the / scope, use the Get-AzureRmRoleAssignment PowerShell cmdlet.

Get-AzureRmRoleAssignment* | where {$_.RoleDefinitionName -eq "User Access Administrator" -and $_SignInName -eq "<username@somedomain.com>" -and $_.Scope -eq "/"}

Output di esempio:Example output:

RoleAssignmentId : /providers/Microsoft.Authorization/roleAssignments/098d572e-c1e5-43ee-84ce-8dc459c7e1f0RoleAssignmentId : /providers/Microsoft.Authorization/roleAssignments/098d572e-c1e5-43ee-84ce-8dc459c7e1f0
Scope : /Scope : /
DisplayName : usernameDisplayName : username
SignInName : username@somedomain.comSignInName : username@somedomain.com
RoleDefinitionName : User Access AdministratorRoleDefinitionName : User Access Administrator
RoleDefinitionId : 18d7d88d-d35e-4fb5-a5c3-7773c20a72d9RoleDefinitionId : 18d7d88d-d35e-4fb5-a5c3-7773c20a72d9
ObjectId : d65fd0e9-c185-472c-8f26-1dafa01f72ccObjectId : d65fd0e9-c185-472c-8f26-1dafa01f72cc
ObjectType : UserObjectType : User

Eliminare l'assegnazione di ruolo nell'ambito "/" tramite PowerShell:Delete the role assignment at "/" scope using Powershell:

È possibile eliminare l'assegnazione tramite il cmdlet PowerShell seguente:You can delete the assignment using following PowerShell cmdlet:

Remove-AzureRmRoleAssignment -SignInName <username@somedomain.com> -RoleDefinitionName "User Access Administrator" -Scope "/" 

Usare elevateAccess per concedere l'accesso ai tenant con l'API RESTUse elevateAccess to give tenant access with the REST API

Il processo di base funziona con i passaggi seguenti:The basic process works with the following steps:

  1. Usando REST, chiamare elevateAccess, che concede all'utente il ruolo di Amministratore Accesso utenti nell'ambito "/".Using REST, call elevateAccess, which grants you the User Access Administrator role at "/" scope.

    POST https://management.azure.com/providers/Microsoft.Authorization/elevateAccess?api-version=2016-07-01
    
  2. Creare un'assegnazione di ruolo per assegnare un ruolo in qualsiasi ambito.Create a role assignment to assign any role at any scope. Nell'esempio seguente vengono illustrate le proprietà per l'assegnazione del ruolo di lettore nell'ambito "/":The following example shows the properties for assigning the Reader role at "/" scope:

    { "properties":{
    "roleDefinitionId": "providers/Microsoft.Authorization/roleDefinitions/acdd72a7338548efbd42f606fba81ae7",
    "principalId": "cbc5e050-d7cd-4310-813b-4870be8ef5bb",
    "scope": "/"
    },
    "id": "providers/Microsoft.Authorization/roleAssignments/64736CA0-56D7-4A94-A551-973C2FE7888B",
    "type": "Microsoft.Authorization/roleAssignments",
    "name": "64736CA0-56D7-4A94-A551-973C2FE7888B"
    }
    
  3. Come Amministratore Accesso utenti, è possibile inoltre eliminare le assegnazioni di ruolo nell'ambito "/".While a User Access Admin, you can also delete role assignments at "/" scope.

  4. Revocare i privilegi di Amministratore Accesso utenti fino a quando non saranno di nuovo necessari.Revoke your User Access Admin privileges until they're needed again.

Come annullare l'azione elevateAccess con l'API RESTHow to undo the elevateAccess action with the REST API

Quando si chiama elevateAccess si crea un'assegnazione di ruolo per se stessi in modo da revocare i privilegi necessari per eliminare l'assegnazione.When you call elevateAccess you create a role assignment for yourself, so to revoke those privileges you need to delete the assignment.

  1. Chiamare le definizioni di ruolo GET dove roleName = Amministratore Accesso utenti per determinare il GUID del nome del ruolo Amministratore Accesso utenti.Call GET role definitions where roleName = User Access Administrator to determine the name GUID of the User Access Administrator role.

    1. GET https://management.azure.com/providers/Microsoft.Authorization/roleDefinitions?api-version=2015-07-01&$filter=roleName+eq+'User+Access+AdministratorGET https://management.azure.com/providers/Microsoft.Authorization/roleDefinitions?api-version=2015-07-01&$filter=roleName+eq+'User+Access+Administrator

      {"value":[{"properties":{
      "roleName":"User Access Administrator",
      "type":"BuiltInRole",
      "description":"Lets you manage user access to Azure resources.",
      "assignableScopes":["/"],
      "permissions":[{"actions":["*/read","Microsoft.Authorization/*","Microsoft.Support/*"],"notActions":[]}],
      "createdOn":"0001-01-01T08:00:00.0000000Z",
      "updatedOn":"2016-05-31T23:14:04.6964687Z",
      "createdBy":null,
      "updatedBy":null},
      "id":"/providers/Microsoft.Authorization/roleDefinitions/18d7d88d-d35e-4fb5-a5c3-7773c20a72d9",
      "type":"Microsoft.Authorization/roleDefinitions",
      "name":"18d7d88d-d35e-4fb5-a5c3-7773c20a72d9"}],
      "nextLink":null}
      

      Salvare il GUID dal parametro nome, in questo caso 18d7d88d-d35e-4fb5-a5c3-7773c20a72d9.Save the GUID from the name parameter, in this case 18d7d88d-d35e-4fb5-a5c3-7773c20a72d9.

  2. È inoltre necessario elencare l'assegnazione di ruolo per l'amministratore del tenant nell'ambito del tenant.You also need to list the role assignment for tenant admin at tenant scope. Elencare tutte le assegnazioni nell'ambito del tenant per PrincipalId di TenantAdmin che ha effettuato la chiamata per l'accesso con privilegi elevati.List all assignments at tenant scope for the PrincipalId of the TenantAdmin who made the elevate access call. Sono incluse tutte le assegnazioni nel tenant per il parametro ObjectID.This will list all assignments in the tenant for the ObjectID.

    1. GET https://management.azure.com/providers/Microsoft.Authorization/roleAssignments?api-version=2015-07-01&$filter=principalId+eq+'{objectid}'GET https://management.azure.com/providers/Microsoft.Authorization/roleAssignments?api-version=2015-07-01&$filter=principalId+eq+'{objectid}'

      Nota

      Un amministratore di tenant non deve avere molte assegnazioni. Se la query precedente restituisce troppi assegnazioni, è anche possibile eseguire una query su tutte le assegnazioni solo a livello di ambito di tenant, quindi filtrare i risultati: GET https://management.azure.com/providers/Microsoft.Authorization/roleAssignments?api-version=2015-07-01&$filter=atScope()A tenant admin should not have many assignments, if the query above returns too many assignments, you can also query for all assignments just at tenant scope level, then filter the results: GET https://management.azure.com/providers/Microsoft.Authorization/roleAssignments?api-version=2015-07-01&$filter=atScope()

    2. Le suddette chiamate restituiscono un elenco di assegnazioni di ruolo.The above calls return a list of role assignments. Individuare l'assegnazione di ruolo in cui l'ambito è "/" e RoleDefinitionId termina con il GUID del nome del ruolo presente nel passaggio 1 e PrincipalId corrisponde a ObjectId dell'amministratore del tenant. L'assegnazione del ruolo dovrebbe risultare simile alla seguente:Find the role assignment where the scope is "/" and the RoleDefinitionId ends with the role name GUID you found in step 1 and PrincipalId matches the ObjectId of the Tenant Admin. The role assignment looks like this:

      {"value":[{"properties":{
      "roleDefinitionId":"/providers/Microsoft.Authorization/roleDefinitions/18d7d88d-d35e-4fb5-a5c3-7773c20a72d9",
      "principalId":"{objectID}",
      "scope":"/",
      "createdOn":"2016-08-17T19:21:16.3422480Z",
      "updatedOn":"2016-08-17T19:21:16.3422480Z",
      "createdBy":"93ce6722-3638-4222-b582-78b75c5c6d65",
      "updatedBy":"93ce6722-3638-4222-b582-78b75c5c6d65"},
      "id":"/providers/Microsoft.Authorization/roleAssignments/e7dd75bc-06f6-4e71-9014-ee96a929d099",
      "type":"Microsoft.Authorization/roleAssignments",
      "name":"e7dd75bc-06f6-4e71-9014-ee96a929d099"}],
      "nextLink":null}
      

      Di nuovo, salvare il GUID dal parametro nome, in questo caso e7dd75bc-06f6-4e71-9014-ee96a929d099.Again, save the GUID from the name parameter, in this case e7dd75bc-06f6-4e71-9014-ee96a929d099.

    3. Usare quindi l'ID RoleAssignment evidenziato per eliminare l'assegnazione aggiunta da elevateAccess:Finally, Use the highlighted RoleAssignment ID to delete the assignment added by Elevate Access:

      DELETE https://management.azure.com /providers/Microsoft.Authorization/roleAssignments/e7dd75bc-06f6-4e71-9014-ee96a929d099?api-version=2015-07-01DELETE https://management.azure.com /providers/Microsoft.Authorization/roleAssignments/e7dd75bc-06f6-4e71-9014-ee96a929d099?api-version=2015-07-01

Passaggi successiviNext steps