Gestione degli accessi IAM per Inferenza AI di Red Hat
L'accesso ai progetti di Red Hat AI Inference per gli utenti del proprio account è gestito da IBM Cloud® Identity and Access Management (IAM). A ogni utente che accede al servizio Red Hat AI Inference dal proprio account deve essere assegnata una politica di accesso con un ruolo IAM. Esamina i seguenti ruoli, azioni e altre informazioni per stabilire il modo migliore per assegnare l'accesso a Red Hat AI Inference.
La politica di accesso che assegni agli utenti del tuo account determina quali azioni un utente può eseguire nell'ambito del servizio o del progetto specifico che selezioni. Le azioni consentite sono personalizzate e definite dall' Red Hat AI Inference e come operazioni che è consentito eseguire sul servizio. Ogni azione è associata a un ruolo della piattaforma IAM o a un ruolo di servizio che è possibile assegnare a un utente.
Assicurati di disporre anche del ruolo "Viewer" per i gruppi di risorse che desideri utilizzare.
Le politiche di accesso IAM consentono l'accesso a diversi livelli. Tra le opzioni disponibili figurano le seguenti:
- Concedere l'accesso in lettura o in scrittura a un progetto specifico.
- Concedere l'accesso in lettura o in scrittura a un gruppo di risorse specifico in cui potrebbero essere presenti numerosi progetti.
- Concedere al lettore o all'autore l'accesso all'intero account, in cui potrebbero essere presenti numerosi gruppi di risorse con molti progetti.
- Conferire all'utente con ruolo "Viewer" l'accesso ai progetti " Inferenza AI di Red Hat " all'interno di un gruppo di risorse e a livello di account.
- Conferire alla creazione l'autorizzazione a creare uno o più progetti " Inferenza AI di Red Hat " all'interno di un gruppo di risorse e a livello di account.
Se un ruolo specifico e le relative azioni non corrispondono al caso d'uso che desideri affrontare, puoi creare un ruolo personalizzato e selezionare le azioni da includere.
Esamina le tabelle seguenti, che illustrano quali tipi di attività è possibile svolgere per ciascun ruolo quando si utilizza il servizio Red Hat AI Inference. I ruoli di gestione della piattaforma consentono agli utenti di eseguire operazioni sulle risorse del servizio a livello di piattaforma, ad esempio assegnare l'accesso al servizio agli utenti, creare o eliminare progetti e associare i progetti alle applicazioni. I ruoli di accesso ai servizi consentono agli utenti di accedere a Red Hat AI Inference e di effettuare chiamate all'API di Red Hat AI Inference.
Questa è una panoramica generale delle operazioni che gli utenti possono eseguire in base ai ruoli della piattaforma. Fornisci una descrizione in linguaggio semplice relativa al tipo di attività che possono essere svolte o alle mansioni più comuni che gli utenti possono aspettarsi di svolgere quando viene loro assegnato ciascun ruolo.
Ruoli e azioni IAM
| Ruolo piattaforma | Descrizione |
|---|---|
| Visualizzatore | In qualità di utente con diritti di sola visualizzazione, puoi visualizzare i progetti, ma non puoi modificarli. |
| Operatore | In qualità di operatore, puoi eseguire le azioni sulla piattaforma necessarie per configurare e gestire i progetti, come ad esempio visualizzare la dashboard di un servizio. |
| Editor | In qualità di editor, puoi eseguire tutte le azioni della piattaforma, tranne la gestione dell'account e l'assegnazione di politiche di accesso. |
| Amministratore | In qualità di amministratore, puoi eseguire tutte le azioni della piattaforma in base alla risorsa assegnata a questo ruolo, inclusa l'assegnazione di politiche di accesso ad altri utenti. |
| Configuratore di servizi - Lettore | La capacità di leggere la configurazione dei servizi ai fini della gestione della governance. |
| Responsabile delle chiavi | In qualità di responsabile delle chiavi, il servizio può eseguire le operazioni sulla piattaforma necessarie per gestire le chiavi delle risorse, come ad esempio la creazione di una nuova chiave di risorsa. |
| Ruolo del servizio | Descrizione |
|---|---|
| Lettore | In qualità di lettore, puoi eseguire azioni di sola lettura all'interno di un servizio, ad esempio visualizzare le risorse specifiche del servizio. |
| Scrittore | In qualità di scrittore, disponi di autorizzazioni al di sopra del ruolo di lettore, incluso la creazione e la modifica di risorse specifiche del servizio. |
| Gestore | In qualità di gestore, disponi di autorizzazioni al di sopra del ruolo di scrittore per completare le azioni privilegiate definite dal servizio. Inoltre, puoi creare e modificare risorse specifiche del servizio. |
| Iniziative ed eventi | Descrizione | Ruoli |
|---|---|---|
instructlab.dashboard.view |
Visualizza i dashboard di " Red Hat AI Inference ". | Operatore, Amministratore, Redattore |
instructlab.taxonomy.read |
Leggi i dettagli relativi a una tassonomia. | Lettore, Scrittore e Gestore |
instructlab.taxonomy.create |
Crea tassonomie | Scrittore, Gestore |
instructlab.taxonomy.list |
Elenco delle tassonomie. | Lettore, Scrittore e Gestore |
instructlab.taxonomy.delete |
Elimina le tassonomie. | Scrittore, Gestore |
instructlab.sdgdata.read |
Leggi i dettagli di un ciclo di generazione dei dati. | Lettore, Scrittore e Gestore |
instructlab.sdgdata.list |
Elenca le esecuzioni di generazione dei dati. | Lettore, Scrittore e Gestore |
instructlab.sdgdata.create |
Creare un ciclo di generazione dei dati. | Scrittore, Gestore |
instructlab.sdgdata.delete |
Elimina un ciclo di generazione dei dati. | Scrittore, Gestore |
instructlab.sdgdata.stop |
Interrompere un ciclo di generazione dei dati. | Scrittore, Gestore |
instructlab.sdgdata.stop |
Interrompere un ciclo di generazione dei dati. | Scrittore, Gestore |
instructlab.model.read |
Leggi i dettagli di una sessione di allenamento tipo. | Lettore, Scrittore e Gestore |
instructlab.model.list |
Elenca le sessioni di addestramento del modello. | Lettore, Scrittore e Gestore |
instructlab.model.create |
Crea una sessione di addestramento del modello. | Scrittore, Gestore |
instructlab.model.delete |
Elimina una sessione di addestramento di un modello. | Scrittore, Gestore |
instructlab.model.stop |
Interrompi una sessione di addestramento del modello. | Scrittore, Gestore |
Concedi a InstuctLab l'autorizzazione a creare e aggiornare gli artefatti di Object Storage
Assegna a Inferenza AI di Red Hat il ruolo di accesso “ Writer ” per il servizio Object Storage. Anche l'utente che ha effettuato l'accesso deve disporre della stessa autorizzazione.
-
Creare la politica di autorizzazione per Inferenza AI di Red Hat e Object Storage.
ibmcloud iam authorization-policy-create Writer --source-service-name instructlab --target-service-name cloud-object-storageSe disponi già di risorse di tip Object Storage, puoi limitare l'autorizzazione esclusivamente a tali risorse.
ibmcloud iam authorization-policy-create Writer --source-service-name instructlab --target-service-name cloud-object-storage --target-service-instance-id CLOUD-OBJECT-STORAGE-INSTANCE-ID --target-resource CLOUD-OBJECT-STORAGE-BUCKET --target-resource-type bucket -
Verificare che la politica di autorizzazione sia stata creata.
ibmcloud iam authorization-policiesRisultato quando l'autorizzazione non è limitata a un bucket specifico di Object Storage:
Getting authorization policies under account abc1234 as user... OK ID: <id> Source service name: instructlab Source service instance: All instances Target service name: cloud-object-storage Target service instance: All instances Roles: WriterRisultato quando l'autorizzazione è limitata a un bucket specifico di Object Storage:
Getting authorization policies under account abc1234 as user... OK ID: <id> Source service name: instructlab Source service instance: All instances Target service name: cloud-object-storage Target service instance: bucket Roles: Writer -
Facoltativo: se si utilizza un repository privato, creare un’altra autorizzazione di servizio per Inferenza AI di Red Hat e Secrets Manager
ibmcloud iam authorization-policy-create Reader --source-service-name instructlab --target-service-name secrets-manager -
Se necessario, concedere all'utente che ha effettuato l'accesso l'autorizzazione "
Writer". Inserisci l'ID dell'istanza del servizio " Object Storage " indicato nel passaggio precedente.ibmcloud iam user-policy-create <user> --roles Writer --service-instance <cloud-object-storage-instance-id>
Assegna agli utenti i diritti di accesso alle tue risorse
Puoi decidere quali utenti (o gruppi di utenti) del tuo account possano accedere alle risorse di Red Hat AI Inference. Segui questi passaggi per assegnare i diritti di accesso nella console.
Per ulteriori dettagli su come assegnare i diritti di accesso, sulle procedure da seguire per utilizzare la CLI o sui diversi modi per limitare l'accesso a Red Hat AI Inference o al proprio bucket Object Storage, consultare la guida Gestione dell'accesso IAM per Red Hat AI Inference.
Esistono due modi comuni per assegnare i diritti di accesso:
- Criteri di accesso per utente.
- È possibile gestire le politiche di accesso per singolo utente dalla pagina Gestisci > Accesso (IAM) > Utenti nella console. Per informazioni sulla procedura da seguire per assegnare l'accesso IAM, consultare la sezione " Gestione dell'accesso alle risorse" nella console.
- Gruppi di accesso.
- I gruppi di accesso vengono utilizzati per semplificare la gestione degli accessi: basta assegnare l'accesso a un gruppo una sola volta, dopodiché è possibile aggiungere o rimuovere utenti dal gruppo in base alle esigenze, per controllarne l'accesso. È possibile gestire i gruppi di accesso e i relativi diritti di accesso dalla pagina Gestisci > Accesso (IAM) > Gruppi di accesso nella console. Per ulteriori informazioni, consultare la sezione " Assegnazione dei diritti di accesso a un gruppo nella console ".
{{../iam/iam-mng-access.md#access-resources-console}}
{{../iam/iam-mng-access.md#access-to-resources-console}}
{{../iam/iam-mng-access.md#access-to-resource-group}}
Assegnazione dei diritti di accesso a Inferenza AI di Red Hat tramite la CLI
Per istruzioni dettagliate su come assegnare, revocare e verificare i diritti di accesso, consultare la sezione " Assegnazione dei diritti di accesso alle risorse tramite la CLI ". L'esempio seguente mostra un comando per assegnare il ruolo di " Writer " a instructlab:
Come nome del servizio, utilizzare " instructlab ". Per individuare gli ID dei ruoli, eseguire il comando ibmcloud iam roles . Inoltre, metti tra virgolette i nomi dei ruoli composti da più
di una parola. Ad esempio, "Service Configuration Reader".
Comando di esempio per assegnare a un utente il ruolo di "Viewer" per un progetto specifico di Inferenza AI di Red Hat nell'account.
ibmcloud iam user-policy-create name@example.com --roles Viewer --service-name instructlab --attributes "projectId=1b111111-1ef1-11f1-1111-111bae11111a"
Comando di esempio per assegnare a un utente il ruolo di Key Manager per un progetto specifico di Inferenza AI di Red Hat nell'account.
ibmcloud iam user-policy-create name@email.com --roles "Key Manager" --service-name instructlab
Comando di esempio per assegnare a un utente il ruolo "Writer" per tutti i progetti Inferenza AI di Red Hat presenti nell'account.
ibmcloud iam user-policy-create USER@EXAMPLE.COM --service-name instructlab --roles Writer
Comando di esempio per assegnare il ruolo di amministratore a tutte le istanze del servizio " Inferenza AI di Red Hat " presenti nell'account.
ibmcloud iam user-policy-create name@example.com --roles Administrator --service-name instructlab
Comando di esempio per assegnare il ruolo "Viewer" a tutti i gruppi di risorse dell'account.
ibmcloud iam user-policy-create name@example.com --roles Viewer --resource-type resource-group
Comando di esempio per assegnare il ruolo "Viewer" a tutti gli utenti di un determinato gruppo di risorse.
ibmcloud iam user-policy-create name@example.com --roles Viewer --resource-type resource-group
Comando di esempio per assegnare il ruolo di amministratore a un gruppo di risorse.
ibmcloud iam service-policy-create test --roles Administrator --resource-group-name sample-resource-group
Assegnazione dei diritti di accesso a Inferenza AI di Red Hat tramite l'API
Per istruzioni dettagliate su come assegnare, revocare e verificare i diritti di accesso, consultare Assegnazione dei diritti di accesso alle risorse tramite l'API o il sito Crea una politica - Documentazione API. I nomi delle risorse cloud (CRN) riportati nella tabella seguente vengono utilizzati per assegnare i diritti di accesso tramite l'API.
Utilizza " instructlab " come nome del servizio e consulta la tabella dei valori CRN dei ruoli per assicurarti di utilizzare il valore corretto per il ruolo. Esamina il seguente elenco di CRN relativi ai ruoli.
| Ruolo | CRN |
|---|---|
| Lettore | crn:v1:bluemix:public:iam::::serviceRole:Reader |
| Scrittore | crn:v1:bluemix:public:iam::::serviceRole:Writer |
| Gestore | crn:v1:bluemix:public:iam::::serviceRole:Manager |
| Visualizzatore | crn:v1:bluemix:public:iam::::role:Viewer |
| Operatore | crn:v1:bluemix:public:iam::::role:Operator |
| Editor | crn:v1:bluemix:public:iam::::role:Editor |
| Amministratore | crn:v1:bluemix:public:iam::::role:Administrator |
| Configuratore di servizi - Lettore | crn:v1:bluemix:public:iam::::role:ConfigReader |
| Responsabile delle chiavi | crn:v1:bluemix:public:resource-controller::::role:KeyManager |
L'esempio seguente assegna il ruolo " Writer " all'utente instructlab.
curl -X POST 'https://iam.cloud.ibm.com/v1/policies' -H 'Authorization: Bearer $TOKEN' -H 'Content-Type: application/json' -d '{
"type": "access",
"description": "Writer role for InstructLab",
"subjects": [
{
"attributes": [
{
"name": "iam_id",
"value": "IBMid-123453user"
}
]
}'
],
"roles":[
{
"role_id": "crn:v1:bluemix:public:iam::::serviceRole:Writer"
}
],
"resources":[
{
"attributes": [
{
"name": "accountId",
"value": "$ACCOUNT_ID"
},
{
"name": "serviceName",
"value": "instructlab"
}
]
}
]
}
{{../iam/iam-mng-access.md#access-resources-api}}
{{../iam/iam-mng-access.md#access-resourcegroups-api}}