Esempi di criteri di sicurezza
Scopri come utilizzare i criteri per creare amministratori a livello di servizio per il privilegio minimo, limitare la capacità degli amministratori di modificare l'appartenenza al gruppo degli amministratori della tenancy e impedire agli amministratori di eliminare o aggiornare i criteri di sicurezza, nonché impedire loro di accedere o modificare le credenziali utente.
Gli esempi di criteri di sicurezza IAM comuni sono disponibili in Policy comuni. In tutti gli esempi riportati di seguito, i criteri vengono definiti in base a una tenancy. Tuttavia, specificando un nome di compartimento, puoi applicare l'ambito dei criteri a compartimenti specifici in una tenancy.
Crea amministratori a livello di servizio per privilegio minimo
Per implementare il principio di sicurezza del privilegio minimo, è possibile creare amministratori a livello di servizio nella tenancy per estendere ulteriormente l'accesso amministrativo. Ciò significa che gli amministratori a livello di servizio possono gestire solo le risorse di un servizio specifico. Ad esempio, gli amministratori di rete hanno bisogno dell'accesso amministrativo (manage) solo alle risorse VCN e non ad altre risorse. L'esempio riportato di seguito mostra come creare gruppi di amministratori per lo storage a blocchi (VolumeAdmins), la VCN (NetworkAdmins), i database (DBAdmins) e lo storage degli oggetti (StorageAdmins).
Allow group TenancyAdmins to manage all-resources in tenancy
Allow group VolumeAdmins to manage volume-family in tenancy
Allow group NetworkAdmins to manage virtual-network-family in tenancy
Allow group StorageAdmins to manage object-family in tenancy
Allow group DBAdmins to manage database-family in tenancyÈ possibile vincolare ulteriormente i criteri di sicurezza a un compartimento specifico. Ad esempio, il reparto HR di un'azienda può creare il gruppo HRAdmins per gestire le risorse all'interno del proprio compartimento, HR-compartment. Il gruppo HRNetworkAdmins dispone dell'accesso amministrativo alle risorse VCN solo all'interno del compartimento HR-compartment.
Allow group HRAdmins to manage all-resources in compartment HR-compartment
Allow group HRNetworkAdmins to manage virtual-network-family in compartment HR-compartment
Gli auditor della conformità hanno il compito di esaminare le risorse cloud e verificare la presenza di violazioni dei criteri. Il criterio riportato di seguito consente al gruppo InternalAuditors di ispezionare (list) tutte le risorse in una tenancy.
Allow group InternalAuditors to inspect all-resources in tenancySe si desidera limitare i revisori a ispezionare solo utenti e gruppi in una tenancy, è possibile creare un gruppo UserAuditors con il criterio seguente:
Allow group UserAuditors to inspect users in tenancy
Allow group UserAuditors to inspect groups in tenancySe si desidera creare un gruppo di auditor in grado di ispezionare solo i firewall VCN nella tenancy, utilizzare il criterio riportato di seguito.
Allow group FirewallAuditors to inspect security-lists in tenancyIn tutti gli esempi di criteri, è possibile vincolare i criteri a un compartimento specificando Compartment <name> (dove <name> è il nome del compartimento) nel criterio.
Limita la possibilità di modificare l'appartenenza al gruppo di amministratori della tenancy
I membri del gruppo Administrators possono gestire tutte le risorse in una tenancy. L'appartenenza al gruppo Administrators è controllata dagli utenti del gruppo. In genere, è consigliabile disporre di un gruppo per creare e aggiungere utenti nella tenancy, ma impedire loro di apportare modifiche all'appartenenza al gruppo Administrators. L'esempio seguente crea un gruppo UserAdmins per eseguire questa operazione.
Allow group UserAdmins to inspect users in tenancy
Allow group UserAdmins to inspect groups in tenancy
Allow group UserAdmins to use users in tenancy
where target.group.name!='Administrators'
Allow group UserAdmins to use groups in tenancy
where target.group.name!='Administrators'L'uso del verbo con condizioni (terza e quarta istruzione dei criteri) consente a UserAdmins di aggiungere utenti e gruppi utilizzando le interfacce API (UpdateUser, UpdateGroup) a tutti i gruppi della tenancy ad eccezione del gruppo Administrators. Tuttavia, poiché target.group.name!='Administrators' non è correlato alle API list e get (ListUsers, GetUser, ListGroups e GetGroup), queste API non riusciranno. È pertanto necessario aggiungere in modo esplicito il verbo inspect (prima e seconda istruzione criterio) per consentire a UserAdmins di ottenere informazioni sull'appartenenza di utenti e gruppi.
Impedisci eliminazione o aggiornamento dei criteri di sicurezza
L'esempio riportato di seguito crea un gruppo PolicyAdmins in modo da poter creare ed elencare i criteri di sicurezza creati dagli amministratori della tenancy, ma non eliminarli o aggiornarli.
Allow group PolicyAdmins to use policies in tenancy
Allow group PolicyAdmins to manage policies in tenancy
where request.permission='POLICY_CREATE'
Questa istruzione dei criteri di sicurezza consente in modo esplicito solo l'autorizzazione POLICY_CREATE e non POLICY_DELETE e POLICY_UPDATE.
Impedisci agli amministratori di accedere o modificare le credenziali utente
Alcuni requisiti di conformità richiedono la separazione dei compiti, in particolare quando la funzionalità di gestione delle credenziali utente è separata dalla gestione della tenancy. In questo caso, è possibile creare due gruppi di amministrazione, TenancyAdmins e CredentialAdmins, in cui TenancyAdmins può eseguire tutte le funzioni di gestione della tenancy ad eccezione della gestione delle credenziali utente e CredentialAdmins può gestire le credenziali utente. TenancyAdmins può accedere a tutte le interfacce API ad eccezione di quelle che elencano, aggiornano o eliminano le credenziali utente. CredentialAdmins può gestire solo le credenziali utente.
Allow group TenancyAdmins to manage all resources in tenancy
where all {request.operation!='ListApiKeys',
request.operation!='ListAuthTokens',
request.operation!='ListCustomerSecretKeys',
request.operation!='UploadApiKey',
request.operation!='DeleteApiKey',
request.operation!='UpdateAuthToken',
request.operation!='CreateAuthToken',
request.operation!='DeleteAuthToken',
request.operation!='CreateSecretKey',
request.operation!='UpdateCustomerSecretKey',
request.operation!='DeleteCustomerSecretKey'}
Allow group CredentialAdmins to manage users in tenancy
where any {request.operation='ListApiKeys',
request.operation='ListAuthTokens',
request.operation='ListCustomerSecretKeys',
request.operation='UploadApiKey',
request.operation='DeleteApiKey',
request.operation='UpdateAuthToken',
request.operation='CreateAuthToken',
request.operation='DeleteAuthToken',
request.operation='CreateSecretKey',
request.operation='UpdateCustomerSecretKey',
request.operation='DeleteCustomerSecretKey'}