Ruoli e risorse degli utenti
IBM® Key Protect for IBM Cloud® supporta un sistema di controllo degli accessi centralizzato che sfrutta IBM Cloud® Identity and Access Management per aiutarvi ad assegnare agli utenti i ruoli e gli accessi corretti per l'account, le istanze di servizio, le chiavi di crittografia e i portachiavi.
Poiché Key Protect è un sistema di gestione delle chiavi che, per sua natura, implica la crittografia di dati importanti e spesso riservati, è fondamentale che la struttura delle autorizzazioni sull'account, le istanze del servizio, le chiavi di crittografia e i file di chiavi sia potente e flessibile. A tal fine, è possibile assegnare i ruoli IBM Cloud® Identity and Access Management in combinazioni variabili, in base al livello di gestione in questione.
Questi diversi tipi di accesso sono analoghi a molti tipi di situazioni di vita. Una persona potrebbe essere il fondatore e il CEO di una società e tuttavia essere solo un membro regolare di un club locale, e allo stesso modo non ha alcuna autorità per scrivere biglietti di traffico. In modo simile, i ruoli Key Protect vengono assegnati nel contesto di una parte specifica di Key Protect, sebbene per semplificare le cose, Key Protect definisce i ruoli "predefiniti" su determinate risorse, a meno che non diversamente specificato (di cui discuteremo più avanti).
Esistono due aree principali di amministrazione per quasi tutti i prodotti IBM Cloud: account (noto anche come "piattaforma") e istanze di servizio di proprietà dell'account. Una grande banca, ad esempio, potrebbe avere un solo conto (controllato dalla leadership esecutiva) e istanze di servizio separate per ciascuna delle unità organizzative all'interno della banca (ad esempio, un'unità potrebbe gestire conti bancari mentre un'altra gestisce i prestiti). Mentre è probabile che gli utenti con diritti a livello di account avranno anche diritti sulle varie istanze (e forse, anche se non sempre, il contrario), tieni presente che i nomi forniti ai ruoli dell'account sono differenti rispetto a quelli per i ruoli all'interno delle istanze del servizio, riflettendo questa differenza tra ruoli dell'account e ruoli dell'istanza del servizio. Per ulteriori informazioni su tali ruoli, i loro nomi e le loro autorizzazioni, controlla Ruoli e azioni IAM.
Come funziona l'accesso IAM
Dopo aver configurato e organizzato i gruppi di risorse nel tuo account, puoi trarre vantaggio da un paio di strategie per semplificare il processo di gestione degli accessi:
- Gruppi di accesso
- È possibile gestire in modo minimo il numero di politiche assegnate fornendo lo stesso accesso a tutte le identità in un gruppo di accesso invece di assegnare lo stesso accesso più volte per singolo utente, ID servizio o profilo attendibile. Gli utenti devono essere invitati al tuo account prima di poterli aggiungere a un gruppo di accesso. Se un utente si qualifica per un profilo attendibile che è un membro del gruppo di accesso, non è necessario invitarlo al tuo account.
- Profili attendibili
- Se la propria organizzazione dispone di una directory aziendale, i profili attendibili possono ridurre il tempo e lo sforzo per gestire l'accesso. Semplifica il processo di accesso al tuo account IBM Cloud per utenti federati nella tua azienda. Puoi concedere automaticamente agli utenti federati o alle risorse di calcolo l'accesso al tuo account creando profili attendibili. Per gli utenti federati, aggiungere condizioni basate sugli attributi di SAML per definire quali utenti federati possono applicare un profilo. Per le risorse di calcolo, specificare risorse specifiche o aggiungere condizioni basate sugli attributi delle risorse per definire quali risorse di calcolo possono applicare un profilo. Per entrambi i tipi di entità, il livello di accesso concesso è determinato dalle politiche di accesso che sono specificate all'interno di ciascun profilo attendibile o dai gruppi di accesso di cui il profilo attendibile è membro. Tuttavia, i profili di fiducia non richiedono che gli utenti federati siano invitati a un account e solo gli utenti federati da un fornitore di identità esterno ( IdP ) possono applicare un profilo di fiducia.
Quando sei membro di più gruppi di accesso, tutte le politiche si applicano contemporaneamente quando accedi a un account. Come utente federato, si potrebbe avere la possibilità di applicare diversi profili attendibili, ma si seleziona un solo
profilo da applicare quando si accede. Ad esempio, se si desidera completare le attività relative allo sviluppatore, selezionare il profilo Developer durante l'accesso. Se si desidera completare un'attività relativa all'amministratore,
selezionare il profilo Admin che dispone di autorizzazioni privilegiate. In questo modo, si riduce il rischio di intraprendere azioni privilegiate per errore.
Una politica include un oggetto, una destinazione e un ruolo. L'oggetto in questione è il gruppo di accesso o il profilo attendibile. Il target è ciò a cui si desidera che il soggetto abbia accesso, ad esempio un insieme di risorse in un gruppo di risorse, un'istanza di servizio, tutti i servizi presenti nell'account o tutte le istanze di un servizio. Il ruolo definisce il livello di accesso concesso.
Per ulteriori informazioni su come funzionano i ruoli piattaforma e servizi in Key Protect, consulta Ruoli piattaforma e ruoli servizio.
Procedure consigliate
Esiste un limite sul numero totale di politiche consentite in un account. Puoi utilizzare alcune strategie per assicurarti di non raggiungere il limite e per ridurre la quantità di tempo che passi a gestire l'accesso per le identità nel tuo account (utenti, ID servizio o profili attendibili):
- Utilizzare il principio del privilegio minimo e assegnare solo l'accesso necessario. Questo può aiutarti a garantire che le identità nel tuo account siano limitate solo alle azioni che vuoi consentire. Ad esempio, piuttosto che il proprietario dell'account che condivide le proprie credenziali, che per impostazione predefinita fornisce loro l'accesso Amministratore e Gestore su tutte le risorse del loro account, crea nuove politiche per gli utenti che hanno bisogno di accedere all'account e a ogni istanza del servizio (e le relative chiavi associate).
- Aggiungere le risorse a un gruppo di risorse per ridurre ulteriormente il numero di politiche necessarie. Ad esempio, potresti avere un team che lavora su un progetto che utilizza risorse specifiche nel tuo account. Aggiungere i membri del team a un gruppo di accesso o a un profilo attendibile con una politica che assegna l'accesso solo alle risorse che si trovano in un gruppo di risorse specifico. In questo modo, non è necessario assegnare una politica a ciascuna risorsa per ciascun membro del team. Per ulteriori informazioni sull'assegnazione dell'accesso dettagliato, consulta assign fine-grained access to a single key.
- Utilizzare i gruppi di accesso per semplificare la gestione dell'accesso per le identità che necessitano dello stesso livello di accesso. Puoi configurare un gruppo di accesso con una politica specifica definita e quindi aggiungere tali identità al gruppo. Se i membri del gruppo hanno bisogno di un ulteriore accesso in un secondo momento, è sufficiente definire una nuova politica per il gruppo di accesso.
- Utilizza le tag di gestione dell'accesso per controllare l'accesso alle risorse nel tuo account in scala. Assegnando l'accesso solo alle risorse che hanno tag specifiche ad esse collegate, è possibile evitare più aggiornamenti alle politiche definite. Per ulteriori informazioni, vedi Controllo dell'accesso alle risorse utilizzando le tag.
- Utilizza profili attendibili per concedere automaticamente agli utenti federati e alle risorse di calcolo l'accesso al tuo account. In questo modo, gli utenti federati possono essere mappati su uno o più profili affidabili durante il login, valutando gli attributi basati su SAML per determinare quali profili possono applicare. L'uso di profili attendibili per le risorse di elaborazione consente di evitare di archiviare le credenziali per eseguire le applicazioni e la gestione e la rotazione delle credenziali. È anche possibile aggiungere profili attendibili ai gruppi di accesso per sfruttare la serie di criteri già creati.
- Verificare regolarmente chi è autorizzato a gestire il controllo degli accessi e a cancellare le risorse chiave. Poiché gli errori e l'uso improprio da parte di utenti con autorizzazioni elevate possono causare danni all'account, alle istanze del servizio e ai dati protetti dalle chiavi nella tua istanza del servizio, assicurati che venga gestito un accesso appropriato controllando gli utenti con tali ruoli. Ricorda che tutte le nuove chiavi, i keyring o le istanze del servizio create sono soggette per impostazione predefinita a definizioni di ruolo esistenti. Se una nuova chiave non deve essere acceduta o modificata da un nuovo utente assegnato come Gestore dell'istanza, tale limitazione deve essere specificatamente assegnata, poiché i gestori dell'istanza hanno accesso a tutte le chiavi in un'istanza per impostazione predefinita, inclusa la capacità di eliminare una chiave.
Quali sono gli elementi che caratterizzano una buona strategia relativa ai gruppi di accesso?
Un gruppo di accesso è un'organizzazione di utenti, ID servizio e profili attendibili in un raggruppamento a cui puoi concedere lo stesso accesso IAM. Tutte le identità in un singolo gruppo di accesso ereditano lo stesso accesso.
Un modo logico per assegnare l'accesso ai tuoi gruppi di risorse e alle risorse incluse è creando un gruppo di accesso per ogni livello di accesso richiesto. Quindi, puoi associare ogni gruppo di accesso
ai gruppi di risorse creati precedentemente. Ad esempio, per controllare l'accesso al progetto CustApp, puoi creare i seguenti gruppi di accesso:
- Auditor-Group
- Developer-Group
- Admin-Group
Per il gruppo "Auditor", assegnare due criteri di accesso che concedano l'accesso in sola lettura alle risorse e ai gruppi di risorse CustApp-Test e CustApp-Prod. Per il gruppo "Developer-Group",
assegnare due criteri di accesso che concedano i diritti di modifica alle risorse e ai gruppi di risorse CustApp-Dev e CustApp-Test. Per il gruppo Admin, assegnare tre criteri di accesso che concedano i diritti
di amministratore a tutti e tre i gruppi di risorse CustApp e alle relative risorse.
È possibile assegnare i diritti di amministratore su tutte le risorse di un account creando un gruppo di accesso e assegnandogli due criteri. Per creare la prima politica, seleziona Tutti i servizi abilitati all'accesso e all'identità in Account con il ruolo della piattaforma Amministratore e il ruolo del servizio Gestore. Per creare la seconda politica, selezionare Tutti i servizi di gestione account con il ruolo di amministratore assegnato.
Ruoli della piattaforma e ruoli del servizio
La parola "oggetto" viene utilizzata in questa sezione come termine generico per cose come chiavi o portachiavi o istanze di servizio o account.
Come accennato in precedenza, i ruoli esistono sia a livello di piattaforma (account) che a livello di servizio. Se non sei sicuro di cosa una piattaforma o un ruolo del servizio consente a un utente di fare, ricorda che i ruoli della piattaforma interagiscono principalmente con i servizi IBM Cloud come il controller delle risorse o Cloud Identity and Access Management. I ruoli all'interno di un servizio, invece, interagiscono principalmente con l'API pertinente, che in tal caso è l'API Key Protect. Ecco perché, come vedrai, i ruoli della piattaforma hanno un utilizzo limitato all'interno delle tue istanze del servizio oltre (nel caso del ruolo Amministratore ) alla capacità di creare una politica di accesso per un particolare oggetto, come un keyring.
Ruoli della piattaforma
- Amministratore: dispone dell'intera gamma di diritti su un particolare oggetto e sui suoi oggetti "child" (ad esempio, le chiavi sono oggetti child delle istanze), incluso il diritto di invitare nuovi utenti e assegnare ruoli sull'oggetto (solo gli amministratori possono assegnare ruoli). Tenere presente che gli amministratori non hanno ruoli di servizio per impostazione predefinita. Tuttavia, possono assegnare ruoli a se stessi.
- Editor: può visualizzare, creare ed eliminare istanze a livello di account, ma non può invitare nuovi utenti. Ha un utilizzo limitato per gli oggetti all'interno di un'istanza del servizio, come le chiavi, oltre alla possibilità di visualizzarli.
- Operatore: può visualizzare le istanze a livello di account, ma non può modificarle. Ha un utilizzo limitato per gli oggetti all'interno di un'istanza del servizio, come le chiavi, oltre alla possibilità di visualizzarli.
- Viewer: può visualizzare le istanze a livello di account, ma non può modificarle. Ha un utilizzo limitato per gli oggetti all'interno di un'istanza del servizio, come le chiavi, oltre alla possibilità di visualizzarli.
I ruoli della piattaforma vengono assegnati a un intero account, a specifiche istanze del servizio o all'interno di oggetti all'interno di un'istanza del servizio.
| Azione | Visualizzatore | Editor | Operatore | Amministratore |
|---|---|---|---|---|
| Visualizza le istanze Key Protect | ||||
| Crea istanze Key Protect | ||||
| Elimina istanze Key Protect | ||||
| Invita nuovi utenti e gestisci le politiche di accesso |
Mentre un ruolo a livello di account fornisce a un utente autorizzazioni particolari sulle istanze del servizio per impostazione predefinita, i ruoli possono essere assegnati anche su una specifica istanza del servizio. Ad esempio, un Editor dell'account (che ha la possibilità di visualizzare, creare ed eliminare istanze, ma non la possibilità di assegnare ruoli) può essere reso un Amministratore di una specifica istanza del servizio, consentendo loro di assegnare ruoli all'interno di tale istanza del servizio.
I ruoli del servizio possono essere applicati ai tre oggetti di prima classe all'interno di un'istanza del servizio: l'istanza nel suo insieme, particolari chiavi e file di chiavi. Proprio come i ruoli account hanno le autorizzazioni sulle istanze per impostazione predefinita, così anche i gestori istanze hanno le autorizzazioni sulle chiavi e sui keyring per impostazione predefinita. Tuttavia, queste autorizzazioni possono essere assegnate in modo più dettagliato laddove necessario, ad esempio fornendo a un utente il ruolo di Gestore solo su una particolare chiave o key ring e un livello inferiore di autorizzazione sull'istanza nel suo insieme.
I ruoli del servizio possono essere assegnati per istanza o per tutte le istanze in un account.
Ruoli delle istanze di servizio
Si noti che le autorizzazioni incluse nei ruoli sono additive. Un Gestore, ad esempio, dispone di tutte le autorizzazioni di cui dispone un Lettore . Fa eccezione il ruolo KeyPurge che include l'azione
kms.secrets.purge, che non fa parte di nessun altro ruolo e deve quindi essere impostata esplicitamente.
- Gestore: ha l'intera gamma di diritti su un particolare oggetto (ad esempio, il gestore di una chiave ha la capacità di impacchettare, spacchettare ed eliminare la chiave, nonché il diritto esclusivo di leggere e aggiornare
le politiche Key Protect come
dualAuthDelete,allowedNetwork,allowedIP, tra le altre). - Programma di scrittura: ha la maggior parte degli stessi diritti che un gestore fa quando si tratta di utilizzare un oggetto (inclusa la capacità di richiamare una chiave e i relativi metadati), ma di solito non può eliminare o disabilitare l'oggetto.
- Lettore: può utilizzare l'oggetto (ad esempio, i lettori di chiavi possono impacchettare e spacchettare una chiave), ma non creare, eliminare o modificare l'oggetto.
- ReaderPlus: ha gli stessi diritti di un lettore, con in più la possibilità di recuperare il payload di una chiave standard.
- KeyPurge: consente di eliminare le chiavi dopo quattro ore.
- KmipAdapterManager: Ha tutti i diritti necessari per gestire l'accesso alle risorse governate tramite il protocollo KMIP
La seguente tabella mostra la modalità di mappatura dei ruoli di accesso al servizio alle autorizzazioni Key Protect.
| Azione | Lettore | ReaderPlus | Scrittore | Gestore | KeyPurge | KmipAdapterManager |
|---|---|---|---|---|---|---|
| Crea una chiave | ||||||
| Importa una chiave | ||||||
| Richiama una chiave | ||||||
| Richiama metadati chiave | ||||||
| Richiama totale chiavi | ||||||
| Elenca chiavi | ||||||
| Elenca versioni chiave | ||||||
| Impacchetta una chiave | ||||||
| Spacchetta una chiave | ||||||
| Reimpacchetta una chiave | ||||||
| Ruota una chiave | ||||||
| Disabilita una chiave | ||||||
| Abilita una chiave | ||||||
| Pianificazione della cancellazione di una chiave | ||||||
| Annulla l'eliminazione di una chiave | ||||||
| Elimina una chiave | ||||||
| Ripristina una chiave | ||||||
| Applica patch a una chiave | ||||||
| Sincronizza chiavi | ||||||
| Elimina chiavi dopo quattro ore |
| Azione | Lettore | ReaderPlus | Scrittore | Gestore | KeyPurge | KmipAdapterManager |
|---|---|---|---|---|---|---|
| Crea un keyring | ||||||
| Elenca keyring | ||||||
| Elimina un file di chiavi |
| Azione | Lettore | ReaderPlus | Scrittore | Gestore | KeyPurge | KmipAdapterManager |
|---|---|---|---|---|---|---|
| Imposta politiche delle chiavi | ||||||
| Elenca politiche delle chiavi | ||||||
| Imposta politiche delle istanze | ||||||
| Elenca politiche delle istanze |
| Azione | Lettore | ReaderPlus | Scrittore | Gestore | KeyPurge | KmipAdapterManager |
|---|---|---|---|---|---|---|
| Crea un token di importazione | ||||||
| Richiama un token di importazione |
| Azione | Lettore | ReaderPlus | Scrittore | Gestore | KeyPurge | KmipAdapterManager |
|---|---|---|---|---|---|---|
| Crea una registrazione[^services-1] | ||||||
| Elenca le registrazioni per una chiave | ||||||
| Elenca le registrazioni per qualsiasi chiave | ||||||
| Aggiornare una registrazione[^services-2] | ||||||
| Sostituire una registrazione[^services-3] | ||||||
| Elimina una registrazione[^services-4] |
Il ruolo KeyPurge conferisce solo la capacità di eliminare le chiavi e deve essere considerato aggiuntivo rispetto ad altri ruoli di accesso ai servizi, come quello di Manager.
| Azione | Lettore | ReaderPlus | Scrittore | Gestore | KeyPurge | KmipAdapterManager |
|---|---|---|---|---|---|---|
| Elenco degli adattatori KMIP | ||||||
| Creare un adattatore KMIP | ||||||
| Recuperare un adattatore KMIP | ||||||
| Eliminare un adattatore KMIP | ||||||
| Elenco degli oggetti KMIP di un adattatore KMIP | ||||||
| Recuperare un oggetto KMIP da un adattatore KMIP | ||||||
| Eliminare un oggetto KMIP da un adattatore KMIP | ||||||
| Elenco dei certificati client di un adattatore KMIP | ||||||
| Aggiungere un certificato client a un adattatore KMIP | ||||||
| Recuperare un certificato client da un adattatore KMIP | ||||||
| Eliminare un certificato client da un adattatore KMIP |
I ruoli Writer, Reader e ReaderPlus non hanno accesso al protocollo KMIP.
Ruoli e politiche Cloud Identity and Access Management
Mentre la console Key Protect consente agli utenti il controllo dell'accesso dettagliato utilizzando questi ruoli, può essere utile ricordare che questi ruoli sono collegati alle politiche Cloud Identity and Access Management:
- nome servizio (per Key Protect, sempre
kms) - ID istanza del servizio
- ID keyring
- tipo di risorsa (è supportato solo
key) - ID risorsa
- id account (deve essere sempre specificato nella politica)
Ecco un esempio di politica restituita dall'API IAM:
"resources": [
{
"attributes": [
{
"name": "accountId",
"value": "$ACCOUNT_ID",
},
{
"name": "serviceName",
"value": "kms",
},
{
"name": "resourceType",
"value": "key",
},
{
"name": "resource",
"value": "$KEY_ID",
},
{
"name": "keyRing",
"value": "$KEY_RING_ID",
}
]
}
]
Qualsiasi combinazione di questi attributi può essere applicata in una politica. Se a tale politica è collegato il ruolo di amministratore, ciò significa che qualsiasi user/service id/access group a cui è applicata questa politica
può creare una politica che si applica a una risorsa secondaria di quella che è stata concessa. In altre parole, tutti gli utenti sub - admin possono avere accesso solo uguale (esattamente gli stessi attributi specificati nella loro politica)
o inferiore (esattamente gli stessi attributi specificati nella loro politica e gli attributi aggiuntivi specificati) a quello dell'amministratore parent.
Operazioni successive
Gli amministratori e i proprietari dell'account possono invitare gli utenti e configurare le politiche del servizio che corrispondono alle azioni Key Protect che possono eseguire gli utenti.
- Per ulteriori informazioni sull'assegnazione dei ruoli utente nell'interfaccia utente di IBM Cloud, consultare la sezione Gestione degli accessi IAM.