Controllo degli accessi in base al ruoloRole-based access control

La definizione di privilegi e diritti di accesso basati su gruppo è una procedura consigliata.Group-based access rights and privileges are a good practice. La definizione di gruppi, anziché di singoli utenti, consente di gestire più facilmente i criteri di accesso, mantenere la coerenza degli accessi tra i team e ridurre gli errori di configurazione.Dealing with groups rather than individual users simplifies maintenance of access policies, provides consistent access management across teams, and reduces configuration errors. L'assegnazione e la rimozione di utenti nei gruppi appropriati sono inoltre utili per mantenere aggiornati i privilegi di utenti specifici.Assigning users to and removing users from appropriate groups helps keep current the privileges of a specific user. Il controllo degli accessi in base al ruolo (RBAC) di Azure consente una gestione degli accessi con granularità fine per le risorse organizzate in base ai ruoli utente.Azure role-based access control (RBAC) offers fine-grained access management for resources organized around user roles.

Per una panoramica delle procedure di controllo degli accessi in base al ruolo consigliate come parte di una strategia di sicurezza e gestione delle identità, vedere Procedure consigliate per la sicurezza con il controllo di accesso e la gestione delle identità di Azure.For an overview of recommended RBAC practices as part of an identity and security strategy, see Azure identity management and access control security best practices.

Panoramica del controllo degli accessi in base al ruoloOverview of role-based access control

Usando il controllo degli accessi in base al ruolo, è possibile separare i compiti all'interno del team e concedere a utenti, gruppi, entità servizio o identità gestite specifiche di Azure Active Directory (Azure AD) solo l'accesso sufficiente per eseguire le loro attività.By using role-based access control, you can separate duties within your team and grant only enough access for specific Azure Active Directory (Azure AD) users, groups, service principals, or managed identities to perform their jobs. Invece di concedere a tutti l'accesso senza restrizioni alla sottoscrizione o alle risorse di Azure, è possibile limitare le autorizzazioni per ogni set di risorse.Instead of giving everybody unrestricted access to your Azure subscription or resources, you can limit permissions for each set of resources.

Le definizioni di ruolo Controllo degli accessi in base al ruolo elencano le operazioni consentite o non consentite agli utenti o ai gruppi assegnati a un determinato ruolo.RBAC role definitions list operations that are permitted or disallowed for users or groups assigned to that role. L'ambito di un ruolo specifica le risorse a cui si applicano queste autorizzazioni definite.A role's scope specifies which resources these defined permissions apply to. Gli ambiti possono essere definiti a più livelli: gruppo di gestione, sottoscrizione, gruppo di risorse o risorsa.Scopes can be specified at multiple levels: management group, subscription, resource group, or resource. Gli ambiti sono strutturati in una relazione di tipo padre/figlio.Scopes are structured in a parent/child relationship.

Gerarchia degli ambiti del controllo degli accessi in base al ruolo

Per istruzioni dettagliate per l'assegnazione di utenti e gruppi a ruoli specifici e l'assegnazione di ruoli ad ambiti, vedere Gestire l'accesso alle risorse di Azure usando il controllo degli accessi in base al ruolo.For detailed instructions for assigning users and groups to specific roles and assigning roles to scopes, see Manage access to Azure resources using RBAC.

Quando si pianifica una strategia di controllo di accesso, usare un modello di accesso con privilegi minimi che conceda agli utenti solo le autorizzazioni necessarie per eseguire le loro attività.When planning your access control strategy, use a least-privilege access model that grants users only the permissions required to perform their work. Il diagramma seguente mostra uno schema consigliato per l'uso del controllo degli accessi in base al ruolo in base a questo approccio.The following diagram shows a suggested pattern for using RBAC through this approach.

Modello consigliato per l'uso del controllo degli accessi in base al ruolo

Nota

Quanto più specifiche o dettagliate sono le autorizzazioni definite dall'utente, tanto più probabile è che i controlli di accesso diventino complessi e difficili da gestire.The more specific or detailed permissions are that you define, the more likely it is that your access controls will become complex and difficult to manage. Questo è particolarmente vero man mano che aumentano le dimensioni dell'ambiente cloud.This is especially true as your cloud estate grows in size. Evitare di definire autorizzazioni specifiche per le risorse.Avoid resource-specific permissions. Usare invece i gruppi di gestione per il controllo di accesso a livello aziendale e i gruppi di risorse per il controllo di accesso all'interno delle sottoscrizioni.Instead, use management groups for enterprise-wide access control and resource groups for access control within subscriptions. Evitare anche di definire autorizzazioni specifiche per gli utenti.Also avoid user-specific permissions. Assegnare invece l'accesso ai gruppi in Azure ad.Instead, assign access to groups in Azure AD.

Usare i ruoli RBAC predefinitiUse built-in RBAC roles

In Azure sono disponibili molte definizioni di ruolo predefinite, con tre ruoli principali per concedere l'accesso:Azure provides a many built-in role definitions, with three core roles for providing access:

  • Il ruolo Proprietario può gestire qualsiasi cosa, incluso l'accesso alle risorse.The Owner role can manage everything, including access to resources.
  • Il ruolo Collaboratore può gestire qualsiasi cosa, tranne l'accesso alle risorse.The Contributor role can manage everything except access to resources.
  • Il ruolo Lettore può visualizzare qualsiasi cosa, ma senza apportare modifiche.The Reader role can view everything but not make any changes.

A partire da questi livelli di accesso di base, i ruoli predefiniti aggiuntivi forniscono controlli più dettagliati per accedere a specifici tipi di risorse o funzionalità di Azure.Beginning from these core access levels, additional built-in roles provide more detailed controls for accessing specific resource types or Azure features. È ad esempio possibile gestire l'accesso alle macchine virtuali usando i ruoli predefiniti seguenti:For example, you can manage access to virtual machines by using the following built-in roles:

Per un altro esempio di uso dei ruoli predefiniti per gestire l'accesso a funzionalità particolari, vedere la discussione relativa al controllo dell'accesso alle funzionalità di rilevamento dei costi in tenere traccia dei costi in business unit, ambienti o progetti.For another example of using built-in roles to manage access to particular features, see the discussion on controlling access to cost-tracking features in Track costs across business units, environments, or projects.

Per un elenco completo dei ruoli predefiniti disponibili, vedere Ruoli predefiniti per le risorse di Azure.For a complete list of available built-in roles, see Built-in roles for Azure resources.

Usare i ruoli personalizzatiUse custom roles

Anche se i ruoli predefiniti di Azure supportano un'ampia gamma di scenari di controllo di accesso, possono non soddisfare tutte le esigenze dell'organizzazione o del team.Although the roles built in to Azure support a wide variety of access control scenarios, they might not meet all the needs of your organization or team. Se, ad esempio, un gruppo di utenti è responsabile della gestione delle macchine virtuali e delle risorse del database SQL di Azure, può essere necessario creare un ruolo personalizzato per ottimizzare la gestione dei controlli di accesso necessari.For example, if you have a single group of users responsible for managing virtual machines and Azure SQL Database resources, you might want to create a custom role to optimize management of the required access controls.

La documentazione relativa al controllo degli accessi in base al ruolo di Azure contiene istruzioni sulla creazione di ruoli personalizzati oltre a informazioni dettagliate sul funzionamento delle definizioni di ruolo.The Azure RBAC documentation contains instructions on creating custom roles, along with details on how role definitions work.

Separazione di responsabilità e ruoli per le organizzazioni di grandi dimensioniSeparation of responsibilities and roles for large organizations

Il controllo degli accessi in base al ruolo consente alle organizzazioni di assegnare team diversi a varie attività di gestione nell'ambito di vasti ambienti cloud.RBAC allows organizations to assign different teams to various management tasks within large cloud estates. Consente ai team IT centrali di controllare le funzionalità di sicurezza e di accesso principali, offrendo allo stesso tempo agli sviluppatori di software e ad altri team grandi quantità di controllo su carichi di lavoro o gruppi di risorse specifici.It can allow Central IT teams to control core access and security features, while also giving software developers and other teams large amounts of control over specific workloads or groups of resources.

La maggior parte degli ambienti cloud può inoltre trarre vantaggio da una strategia di controllo di accesso basata su più ruoli in cui è accentuata la separazione delle responsabilità tra i ruoli.Most cloud environments can also benefit from an access-control strategy that uses multiple roles and emphasizes a separation of responsibilities between these roles. Questo approccio richiede che il completamento di qualsiasi modifica significativa alle risorse o all'infrastruttura coinvolga più ruoli. In questo modo si ha la certezza che una modifica venga rivista e approvata da più persone.This approach requires that any significant change to resources or infrastructure involves multiple roles to complete, ensuring that more than one person must review and approve a change. Questa separazione delle responsabilità limita la capacità di un singolo utente di accedere a dati sensibili o introdurre vulnerabilità senza conoscere gli altri membri del team.This separation of responsibilities limits the ability of a single person to access sensitive data or introduce vulnerabilities without the knowledge of other team members.

La tabella seguente illustra un modello comune per suddividere le responsabilità IT in ruoli personalizzati distinti:The following table illustrates a common pattern for dividing IT responsibilities into separate custom roles:

RaggruppareGroup Nome del ruolo comuneCommon role name ResponsabilitàResponsibilities
Operazioni per la sicurezzaSecurity operations SecOpsSecOps Esegue una supervisione generale della sicurezza.Provides general security oversight.
Stabilisce e applica i criteri di sicurezza, ad esempio la crittografia dei file inattivi.Establishes and enforces security policy such as encryption at rest.

Gestisce le chiavi di crittografia.Manages encryption keys.

Gestisce le regole del firewall.Manages firewall rules.
Operazioni di reteNetwork operations NetOpsNetOps Gestisce la configurazione e le operazioni nell'ambito delle reti virtuali, ad esempio le route e i peering.Manages network configuration and operations within virtual networks, such as routes and peerings.
Operazioni dei sistemiSystems operations SysOpsSysOps Specifica le opzioni dell'infrastruttura di calcolo e archiviazione e gestisce le risorse che sono state distribuite.Specifies compute and storage infrastructure options, and maintains resources that have been deployed.
Sviluppo, test e operazioniDevelopment, test, and operations DevOpsDevOps Compila e distribuisce le funzionalità e le applicazioni per i carichi di lavoro.Builds and deploys workload features and applications.

Gestisce le funzionalità e le applicazioni per soddisfare i contratti di servizio e altri standard di qualità.Operates features and applications to meet service-level agreements and other quality standards.

La suddivisione delle azioni e delle autorizzazioni in questi ruoli standard è spesso la stessa nelle applicazioni, nelle sottoscrizioni o nell'intero ambiente cloud, anche se questi ruoli vengono eseguiti da persone diverse a livelli diversi.The breakdown of actions and permissions in these standard roles are often the same across your applications, subscriptions, or entire cloud estate, even if these roles are performed by different people at different levels. Di conseguenza, è possibile creare un set comune di definizioni di ruolo Controllo degli accessi in base al ruolo da applicare in diversi ambiti all'interno del proprio ambiente.Accordingly, you can create a common set of RBAC role definitions to apply across different scopes within your environment. Gli utenti e i gruppi possono quindi essere assegnati a un ruolo comune, ma solo per l'ambito di risorse, gruppi di risorse, sottoscrizioni o gruppi di gestione di cui sono responsabili.Users and groups can then be assigned a common role, but only for the scope of resources, resource groups, subscriptions, or management groups that they're responsible for managing.

Ad esempio, in una topologia di rete hub-spoke con più sottoscrizioni, è possibile disporre di un set comune di definizioni di ruolo per l'hub e per tutti i spoke del carico di lavoro.For example, in a hub and spoke network topology with multiple subscriptions, you might have a common set of role definitions for the hub and all workload spokes. Il ruolo NetOps di una sottoscrizione Hub può essere assegnato ai membri del team IT centrale dell'organizzazione, responsabili della gestione della rete per i servizi condivisi usati da tutti i carichi di lavoro.A hub subscription's NetOps role can be assigned to members of the organization's Central IT team, who are responsible for maintaining networking for shared services used by all workloads. Il ruolo NetOps di una sottoscrizione di spoke di carico di lavoro può quindi essere assegnato ai membri del team specifico del carico di lavoro, consentendo loro di configurare la rete all'interno di tale sottoscrizione in modo da supportare al meglio i requisiti del carico di lavoro.A workload spoke subscription's NetOps role can then be assigned to members of that specific workload team, allowing them to configure networking within that subscription to best support their workload requirements. La stessa definizione di ruolo viene usata per entrambi, ma le assegnazioni basate su ambito garantiscono che gli utenti abbiano accesso solo alle risorse necessarie per svolgere le proprie attività.The same role definition is used for both, but scope-based assignments ensure that users have only the access that they need to perform their job.