Gestione dell'accesso alle risorse
Per gestire l'accesso degli utenti o degli ID servizio utilizzando i criteri IAM, è necessario essere il proprietario dell'account o avere l'accesso corretto assegnato. Per assegnare l'accesso dell'utente alle risorse è necessario essere un amministratore di tutti i servizi dell'account o l'amministratore assegnato per il particolare servizio o istanza di servizio. Per assegnare l'accesso a un ID servizio, è necessario essere amministratore del servizio di identità o dell'ID servizio specifico.
Assegnazione dell'accesso alle risorse
Puoi assegnare l'accesso alle risorse utilizzando due tipi di politiche:
- Accesso alle risorse nell'account, inclusa l'opzione per un solo tipo o per tutti i tipi
- Accesso alle risorse all'interno di un gruppo di risorse, compresa l'opzione per una sola risorsa o per tutte le risorse
Se si elimina o si modifica un criterio esistente per un ID servizio attualmente in uso, si potrebbe causare un'interruzione del servizio.
Se si desidera abilitare un utente all'accesso completo di amministratore per completare le attività di gestione dell'account, come l'invito e la rimozione degli utenti, la visualizzazione della fatturazione e dell'utilizzo, la gestione degli ID servizio, la gestione dei gruppi di accesso, la gestione dell'accesso degli utenti e l'accesso a tutte le risorse abilitate IAM, è necessario assegnare a un utente il seguente accesso:
- Un criterio per i servizi di Identità e accesso abilitati con i ruoli di Amministratore e Manager.
- Un criterio con il ruolo di amministratore su tutti i servizi di gestione degli account.
È inoltre possibile impostare tag di gestione degli accessi per gestire gli accessi. Per ulteriori informazioni, vedere Controllo dell'accesso alle risorse tramite tag.
Gli utenti con il ruolo di amministratore per i servizi di gestione degli account possono modificare l'accesso di altri utenti e rimuovere gli utenti dalla risorsa, compresi altri utenti con il ruolo di amministratore.
Assegnare l'accesso alle risorse nella console
Per assegnare l'accesso a una singola risorsa o a tutte le risorse nell'account, completa la seguente procedura:
- Nella console IBM Cloud, fare clic su Gestione > Accesso (IAM) e selezionare Utenti o Gestione > Accesso (IAM) e selezionare ID servizio, a seconda dell'identità che si desidera assegnare all'accesso.
- Fare clic sull'icona Azioni
> Assegna accesso per l'utente o l'ID servizio a cui si desidera assegnare l'accesso.
- Selezionare un gruppo di servizi o un singolo servizio. Poi, fai clic su Avanti.
- L'accesso a tutte le risorse dell'account o la selezione di risorse specifiche in base agli attributi.
- Fai clic su Next.
- Selezionare una qualsiasi combinazione di ruoli da assegnare e fare clic su Rivedi.
- Fare clic su Aggiungi per aggiungere la configurazione del criterio al riepilogo dei criteri.
- (Facoltativo) Aggiungere utenti o ID di servizio ai gruppi di accesso.
- Selezionare i gruppi di accesso a cui si desidera che l'utente o l'ID servizio appartengano.
- Fai clic su Add
- Fai clic su Assegna.
Se un utente non ha un ruolo nel gruppo di risorse che contiene le risorse, può vedere le risorse, ma non può accedervi andando alla pagina Elenco risorse nell'account per iniziare a lavorare con esse. Assegnate il ruolo Viewer o superiore al gruppo di risorse stesso per garantire che un utente possa accedere alla risorsa.
Per alcuni conti sono disponibili limiti di polizza più elevati per gli ID di servizio. Per sfruttare l'aumento dei massimali di polizza, assegnate l'accesso ai servizi Event Streams o IBM Cloud Object Storage. È inoltre necessario applicare i criteri di accesso a un'istanza di servizio, a un tipo di risorsa e a un ID risorsa specifici.
Assegnazione dell'accesso a un gruppo di risorse nella console
Per assegnare l'accesso a tutte le risorse in un gruppo di risorse o a un solo servizio all'interno di un gruppo di risorse, completa la seguente procedura:
- Nella console IBM Cloud , fare clic su Gestisci > Accesso (IAM) e selezionare Utenti o ID di servizio, a seconda di quale identità si desidera assegnare l'accesso.
- Fare clic sull'utente o sull'ID del servizio a cui si desidera assegnare l'accesso, quindi fare clic su Accesso > Assegna accesso.
- Selezionare un gruppo di servizi o un singolo servizio. Poi, fai clic su Avanti.
- Ambito di accesso a risorse specifiche. Selezionare il tipo di attributo Gruppo di risorse e inserire un gruppo di risorse.
- Fai clic su Next.
- Selezionate i ruoli di accesso per gestire il gruppo di risorse. Poi, fai clic su Avanti.
- Selezionare una qualsiasi combinazione di ruoli da assegnare e fare clic su Rivedi.
- Fare clic su Aggiungi per aggiungere la configurazione del criterio al riepilogo dei criteri.
- Fai clic su Assegna.
Assegnare l'accesso alla gestione di un gruppo di risorse
È possibile assegnare l'accesso per visualizzare o gestire un gruppo di risorse senza assegnare l'accesso al servizio.
Come amministratore, si potrebbe creare un gruppo di accesso con il ruolo Viewer su tutti i gruppi di risorse. In questo modo, quando si assegna l'accesso alle risorse del servizio, non è necessario creare criteri aggiuntivi per la visualizzazione dei gruppi di risorse. Il ruolo Viewer di un gruppo di risorse è necessario per creare un'istanza di servizio in quel gruppo di risorse.
Per assegnare l'accesso a un gruppo di risorse senza assegnare l'accesso al servizio, completare i seguenti passaggi:
- Nella console IBM Cloud , fare clic su Gestisci > Accesso (IAM) e selezionare Utenti o ID di servizio, a seconda di quale identità si desidera assegnare l'accesso.
- Fare clic sull'utente o sull'ID del servizio a cui si desidera assegnare l'accesso, quindi fare clic su Accesso > Assegna accesso.
- Selezionare solo il gruppo di risorse.
- Selezionare Aggiungi una condizione.
- Selezionare il tipo di attributo Gruppo di risorse e inserire un gruppo di risorse.
- Fai clic su Next.
- Selezionare i ruoli di accesso per la visualizzazione o la gestione del gruppo di risorse. Quindi, fare clic su Revisione.
- Fare clic su Aggiungi per aggiungere la configurazione del criterio al riepilogo dei criteri.
- Fai clic su Assegna.
È possibile ripetere questo tipo di criterio come necessario per ogni gruppo di risorse disponibile nell'account per assegnare l'accesso alla gestione di tutti i gruppi di risorse dell'account.
Assegnazione dell'accesso alle risorse mediante l'uso della CLI
-
Accedere a IBM Cloud® CLI. Se hai più account, ti viene richiesto di selezionare quale account utilizzare. Se non specifichi una regione con l'indicatore
-r, devi selezionare anche una regione.ibmcloud loginSe le tue credenziali vengono rifiutate, è possibile che tu stia utilizzando un ID federato. Per eseguire l'accesso con un ID federato, utilizza l'indicatore
--sso. Per ulteriori dettagli, vedi Accesso con un ID federato.Se è la prima volta che si utilizza la CLI di IBM Cloud, consultare l'esercitazione per iniziare.
-
Creare un criterio di accesso e assegnarlo a un utente o a un ID servizio utilizzando il comando
ibmcloud iam user-policy-create.- Questo esempio assegna l'accesso a una risorsa individuale nell'account con il ruolo
Administratorper tutte le istanze del serviziosample-service:
ibmcloud iam user-policy-create name@example.com --roles Administrator --service-name sample-service- Questo esempio assegna l'accesso a tutti i servizi di Gestione account con il ruolo
Administrator:
ibmcloud iam service-policy-create name@example.com --roles Administrator --account-management- Questo esempio assegna l'accesso a Tutti i servizi di Identità e Accesso con il ruolo
Administrator:
ibmcloud iam service-policy-create name@example.com --roles Administrator --attributes serviceType=service- Questo esempio assegna l'accesso a Tutti i servizi di gestione degli account IAM con il ruolo
Administrator:
ibmcloud iam service-policy-create name@example.com --roles Administrator --attributes service_group_id=IAMPer alcuni conti sono disponibili limiti di polizza più elevati per gli ID di servizio. Per sfruttare l'aumento dei massimali di polizza, assegnate l'accesso ai servizi Event Streams o IBM Cloud Object Storage. È inoltre necessario applicare i criteri di accesso a un'istanza di servizio, a un tipo di risorsa e a un ID risorsa specifici.
- Questo esempio assegna l'accesso a Object Storage con il ruolo
Manager. L'accesso è limitato a un'istanza di servizio, a un tipo di risorsa e a un ID di risorsa specifici:
ibmcloud iam service-policy-create SERVICE_ID service-name cloud-object-storage --service-instance SERVICE_INSTANCE_GUID --resource-type RESOURCE_TYPE --resource RESOURCE --roles Manager - Questo esempio assegna l'accesso a una risorsa individuale nell'account con il ruolo
Assegnare l'accesso all'interno di un gruppo di risorse utilizzando la CLI
Immettere il comando ibmcloud user-policy-create per assegnare l'accesso a tutte le risorse di un gruppo di risorse o a un
solo servizio di un gruppo di risorse. Questo esempio fornisce il ruolo name@example.com Operator per il gruppo di risorse con ID dda27e49d2a1efca58083a01dfde18f6:
ibmcloud iam user-policy-create name@example.com --roles Operator --resource-type resource-group --resource dda27e49d2a1efca58083a01dfde18f6
Immettere il comando ibmcloud iam service-policy-create per assegnare l'accesso a tutte le risorse di un gruppo di risorse
o a un solo servizio di un gruppo di risorse. Questo esempio assegna al servizio test Administrator il ruolo di gruppo di risorse chiamato sample-resource-group:
ibmcloud iam service-policy-create test --roles Administrator --resource-group-name sample-resource-group
Assegnazione dell'accesso alla gestione di un gruppo di risorse tramite la CLI
È possibile assegnare l'accesso per visualizzare o gestire un gruppo di risorse senza assegnare l'accesso al servizio.
Come amministratore, si potrebbe creare un gruppo di accesso con il ruolo Viewer su tutti i gruppi di risorse. In questo modo, quando si assegna l'accesso alle risorse del servizio, non è necessario creare criteri aggiuntivi per la visualizzazione dei gruppi di risorse. Il ruolo Viewer di un gruppo di risorse è necessario per creare un'istanza di servizio in quel gruppo di risorse.
L'esempio seguente crea un criterio per Viewer di un gruppo di risorse specifico:
iam user-policy-create name@example.com --roles Viewer --resource-type resource-group --resource fec6c95e6a0a44c5bcca138bfe5a1f9e
L'esempio seguente crea un criterio per Viewer di tutti i gruppi di risorse dell'account.
iam user-policy-create name@example.com --roles Viewer --resource-type resource-group
L'esempio seguente crea un criterio per il Visualizzatore di tutte le risorse di un gruppo di risorse
iam user-policy-create name@example.com --roles Viewer --resource-group-name satellite-test
Assegnare l'accesso alle risorse utilizzando l'API
È possibile assegnare l'accesso a una singola risorsa dell'account o a un elenco di risorse dell'account chiamando l'API IBM Cloud® Identity and Access Management(IAM)Policy Management,
come mostrato nella seguente richiesta di esempio. La richiesta di esempio fornisce l'accesso al ruolo Administrator per un'istanza di un servizio:
curl -X POST 'https://iam.cloud.ibm.com/v1/policies' -H 'Authorization: Bearer $TOKEN' \
-H 'Content-Type: application/json' -d '{
"type": "access",
"description": "Administrator role for SERVICE_NAME's RESOURCE_NAME",
"subjects": [
{
"attributes": [
{
"name": "iam_id",
"value": "IBMid-123453user"
}
]
}'
],
"roles":[
{
"role_id": "crn:v1:bluemix:public:iam::::role:Administrator"
}
],
"resources":[
{
"attributes": [
{
"name": "accountId",
"value": "$ACCOUNT_ID"
},
{
"name": "serviceName",
"value": "$SERVICE_NAME"
},
{
"name": "resource",
"value": "$RESOURCE_NAME",
"operator": "stringEquals"
}
]
}
]
}'
SubjectAttribute subjectAttribute = new SubjectAttribute.Builder()
.name("iam_id")
.value("EXAMPLE_USER_ID")
.build();
PolicySubject policySubjects = new PolicySubject.Builder()
.addAttributes(subjectAttribute)
.build();
PolicyRole policyRoles = new PolicyRole.Builder()
.roleId("crn:v1:bluemix:public:iam::::role:Administrator")
.build();
ResourceAttribute accountIdResourceAttribute = new ResourceAttribute.Builder()
.name("accountId")
.value(exampleAccountId)
.operator("stringEquals")
.build();
ResourceAttribute serviceNameResourceAttribute = new ResourceAttribute.Builder()
.name("serviceName")
.value("service")
.operator("stringEquals")
.build();
PolicyResource policyResources = new PolicyResource.Builder()
.addAttributes(accountIdResourceAttribute)
.addAttributes(serviceNameResourceAttribute)
.build();
CreatePolicyOptions options = new CreatePolicyOptions.Builder()
.type("access")
.subjects(Arrays.asList(policySubjects))
.roles(Arrays.asList(policyRoles))
.resources(Arrays.asList(policyResources))
.build();
Response<Policy> response = service.createPolicy(options).execute();
Policy policy = response.getResult();
System.out.println(policy);
const policySubjects = [
{
attributes: [
{
name: 'iam_id',
value: 'exampleUserId',
},
],
},
];
const policyRoles = [
{
role_id: 'crn:v1:bluemix:public:iam::::role:Administrator',
},
];
const accountIdResourceAttribute = {
name: 'accountId',
value: exampleAccountId,
operator: 'stringEquals',
};
const serviceNameResourceAttribute = {
name: 'serviceName',
value: 'service',
operator: 'stringEquals',
};
const policyResources = [
{
attributes: [accountIdResourceAttribute, serviceNameResourceAttribute]
},
];
const params = {
type: 'access',
subjects: policySubjects,
roles: policyRoles,
resources: policyResources,
};
iamPolicyManagementService.createPolicy(params)
.then(res => {
examplePolicyId = res.result.id;
console.log(JSON.stringify(res.result, null, 2));
})
.catch(err => {
console.warn(err)
});
policy_subjects = PolicySubject(
attributes=[SubjectAttribute(name='iam_id', value='example_user_id')])
policy_roles = PolicyRole(
role_id='crn:v1:bluemix:public:iam::::role:Administrator')
account_id_resource_attribute = ResourceAttribute(
name='accountId', value=example_account_id)
service_name_resource_attribute = ResourceAttribute(
name='serviceName', value='service')
policy_resources = PolicyResource(
attributes=[account_id_resource_attribute,
service_name_resource_attribute])
policy = iam_policy_management_service.create_policy(
type='access',
subjects=[policy_subjects],
roles=[policy_roles],
resources=[policy_resources]
).get_result()
print(json.dumps(policy, indent=2))
subjectAttribute := &iampolicymanagementv1.SubjectAttribute{
Name: core.StringPtr("iam_id"),
Value: core.StringPtr("exampleUserID"),
}
policySubjects := &iampolicymanagementv1.PolicySubject{
Attributes: []iampolicymanagementv1.SubjectAttribute{*subjectAttribute},
}
policyRoles := &iampolicymanagementv1.PolicyRole{
RoleID: core.StringPtr("crn:v1:bluemix:public:iam::::role:Administrator"),
}
accountIDResourceAttribute := &iampolicymanagementv1.ResourceAttribute{
Name: core.StringPtr("accountId"),
Value: core.StringPtr(exampleAccountID),
Operator: core.StringPtr("stringEquals"),
}
serviceNameResourceAttribute := &iampolicymanagementv1.ResourceAttribute{
Name: core.StringPtr("serviceName"),
Value: core.StringPtr("service"),
Operator: core.StringPtr("stringEquals"),
}
policyResources := &iampolicymanagementv1.PolicyResource{
Attributes: []iampolicymanagementv1.ResourceAttribute{
*accountIDResourceAttribute, *serviceNameResourceAttribute}
}
options := iamPolicyManagementService.NewCreatePolicyOptions(
"access",
[]iampolicymanagementv1.PolicySubject{*policySubjects},
[]iampolicymanagementv1.PolicyRole{*policyRoles},
[]iampolicymanagementv1.PolicyResource{*policyResources},
)
policy, response, err := iamPolicyManagementService.CreatePolicy(options)
if err != nil {
panic(err)
}
b, _ := json.MarshalIndent(policy, "", " ")
fmt.Println(string(b))
È possibile assegnare l'accesso a un gruppo di servizi. Per assegnare l'accesso a tutti i servizi abilitati all'Identità e all'Accesso, specificare serviceType per l'attributo name e utilizzare value service. Per assegnare l'accesso a tutti i servizi di Gestione account, specificare serviceType per l'attributo name e utilizzare l'attributo value platform_service.
Per assegnare l'accesso al sottoinsieme di servizi di gestione degli account Tutti i servizi di gestione degli account IAM, specificare service_group_id per l'attributo name e utilizzare value IAM.
Per alcuni conti sono disponibili limiti di polizza più elevati per gli ID di servizio. Per sfruttare l'aumento dei massimali di polizza, assegnate l'accesso ai servizi Event Streams o IBM Cloud Object Storage. È inoltre necessario applicare i criteri di accesso a un'istanza di servizio, a un tipo di risorsa e a un ID risorsa specifici.
La seguente richiesta di esempio fornisce a un ruolo Service ID Reader l'accesso a un'istanza di Object Storage. L'accesso è limitato a un'istanza di servizio, a un tipo di risorsa e a un ID di risorsa specifici:
curl -X POST 'https://iam.cloud.ibm.com/v1/policies' -H 'Authorization: Bearer $TOKEN' -H 'Content-Type: application/json' -d '{
"type": "access",
"description": "Reader role for SERVICE_NAME's RESOURCE_NAME",
"subjects": [
{
"attributes": [
{
"name": "iam_id",
"value": "$SERVICE_ID"
}
]
}'
],
"roles":[
{
"role_id": "crn:v1:bluemix:public:iam::::serviceRole:Reader"
}
],
"resources":[
{
"attributes": [
{
"name": "accountId",
"value": "$ACCOUNT_ID"
},
{
"name": "serviceName",
"value": "cloud-object-storage"
},,
{
"name": "serviceInstance",
"value": "$INSTANCE_ID",
"operator": "stringEquals"
}
{
"name": "resourceType",
"value": "$RESOURCE_TYPE",
"operator": "stringEquals"
},
{
"name": "resource",
"value": "$RESOURCE_NAME",
"operator": "stringEquals"
}
]
}
]
}'
Assegnare l'accesso all'interno di un gruppo di risorse utilizzando l'API
Questa azione può essere eseguita solo tramite l'interfaccia utente o la CLI. Per vedere i passaggi, passare alle istruzioni dell'interfaccia utente o della CLI.
Prima di iniziare
Prima di poter assegnare l'accesso alle risorse usando Terraform, assicuratevi di aver completato quanto segue:
- Installare la CLI di Terraform e configurare il plug-in IBM Cloud Provider per Terraform. Per ulteriori informazioni, vedere il tutorial su Come iniziare con Terraform su IBM Cloud®. Il plug-in astrae le API di IBM Cloud che vengono utilizzate per completare questo compito.
- Creare un file di configurazione di Terraform chiamato
main.tf. In questo file si definiscono le risorse utilizzando il linguaggio di configurazione HashiCorp. Per ulteriori informazioni, consultare il sito Documentazione di Terraform.
Assegnare l'accesso alle risorse utilizzando Terraform
Per assegnare l'accesso alle risorse utilizzando Terraform, procedere come segue:
-
Assegnare l'accesso alle risorse utilizzando l'argomento risorsa
ibm_iam_user_policynel filemain.tf.L'esempio seguente assegna il ruolo
test@in.ibm.comViewera tutte le istanze del serviziokmsutilizzando ibm_iam_user_policy.resource "ibm_iam_user_policy" "policy" { ibm_id = "test@in.ibm.com" roles = ["Viewer"] resources { service = "kms" } }Per alcuni conti sono disponibili limiti di polizza più elevati per gli ID di servizio. Per sfruttare l'aumento dei massimali di polizza, assegnate l'accesso ai servizi Event Streams o IBM Cloud Object Storage. È inoltre necessario applicare i criteri di accesso a un'istanza di servizio, a un tipo di risorsa e a un ID risorsa specifici.
L'esempio seguente fornisce a un ID servizio del ruolo
Readerl'accesso a un'istanza di Object Storage utilizzando ibm_iam_user_policy. L'accesso è limitato a un'istanza di servizio, a un tipo di risorsa e a un ID di risorsa specifici:resource "ibm_iam_service_policy" "policy" { iam_service_id = "$SERVICE_ID" roles = ["Reader"] resources { service = "cloud_object_storage" resource_instance_id = "$SERVICE_INSTANCE_ID" resource_type = "$RESOURCE_TYPE" resource = "$RESOURCE" } }È possibile specificare il nome del servizio a cui si desidera assegnare l'accesso all'opzione
service. Per ulteriori informazioni, vedere i dettagli di riferimento degli argomenti nella pagina di Terraform Identity and Access Management(IAM).Controllate l'accesso alle risorse con il modulo IAM Access Groups per le autorizzazioni basate su criteri. Scoprite i moduli Terraform IBM per le strategie di accesso.
-
Dopo aver completato la creazione del file di configurazione, inizializzare la CLI di Terraform. Per ulteriori informazioni, vedere Inizializzazione delle directory di lavoro.
terraform init -
Predisporre le risorse dal file
main.tf. Per ulteriori informazioni, vedere Provisioning dell'infrastruttura con Terraform.-
Eseguire
terraform planper generare un piano di esecuzione di Terraform per visualizzare in anteprima le azioni proposte.terraform plan -
Eseguire
terraform applyper creare le risorse definite nel piano.terraform apply
-
Assegnare l'accesso all'interno di un gruppo di risorse utilizzando Terraform
Per assegnare l'accesso all'interno di un gruppo di risorse utilizzando Terraform, procedere come segue.
-
Assegnare l'accesso all'interno di un gruppo di risorse utilizzando la risorsa
ibm_iam_user_policynel filemain.tf.L'esempio seguente fornisce il ruolo
test@in.ibm.comViewerper il gruppo di risorse con IDdata.ibm_resource_group.group.idutilizzando ibm_iam_user_policy.data "ibm_resource_group" "group" { name = "default" } resource "ibm_iam_user_policy" "policy" { ibm_id = "test@in.ibm.com" roles = ["Viewer"] resources { service = "containers-kubernetes" resource_group_id = data.ibm_resource_group.group.id } }È possibile specificare l'ID del gruppo di risorse a cui si desidera assegnare l'accesso all'opzione
resource_group_id. Per ulteriori informazioni, vedere i dettagli di riferimento degli argomenti nella pagina di Terraform Identity and Access Management(IAM).L'accesso ai gruppi di risorse può essere limitato utilizzando il modulo Gruppi di accesso IAM per un controllo granulare. Esaminare i moduli Terraform IBM per i criteri dei gruppi di risorse.
-
Dopo aver completato la creazione del file di configurazione, inizializzare la CLI di Terraform. Per ulteriori informazioni, vedere Inizializzazione delle directory di lavoro.
terraform init -
Predisporre le risorse dal file
main.tf. Per ulteriori informazioni, vedere Provisioning dell'infrastruttura con Terraform.-
Eseguire
terraform planper generare un piano di esecuzione di Terraform per visualizzare in anteprima le azioni proposte.terraform plan -
Eseguire
terraform applyper creare le risorse definite nel piano.terraform apply
-
Rimozione dell'accesso alla console
La rimozione dell'accesso per un utente o un ID servizio può richiedere fino a 10 minuti per avere effetto.
- Nella console IBM Cloud , fare clic su Gestisci > Accesso (IAM) e selezionare Utenti o ID di servizio, a seconda di quale identità si desidera gestire.
- Selezionare il nome dell'utente o l'ID del servizio per il quale si desidera rimuovere l'accesso.
- Dalla scheda Accesso, fare clic sull'icona Azioni
Azioni > Rimuovi sulla riga del criterio che si desidera rimuovere.
- Rivedere i dettagli del criterio che si sta per rimuovere e confermare facendo clic su Rimuovi.
È inoltre possibile rimuovere gli utenti e gli ID servizio dai gruppi di accesso selezionando la casella di controllo dell'utente o dell'ID servizio che si desidera rimuovere e facendo clic su Rimuovi. Quindi, fare nuovamente clic su Rimuovi per approvare il processo.
Rimozione dell'accesso tramite CLI
Per rimuovere una politica utente utilizzando la CLI, puoi utilizzare il comando ibmcloud iam user-policy-delete.
ibmcloud iam user-policy-delete USER_ID POLICY_ID [-f, --force]
Per rimuovere un criterio ID servizio tramite la CLI, è possibile utilizzare il comando ibmcloud iam service-policy-delete comando.
ibmcloud iam service-policy-delete SERVICE_ID POLICY_ID [-f, --force]
Rimozione dell'accesso tramite l'API
Eliminare un criterio fornendo l'ID del criterio e chiamando l'API di gestione dei criteri di IBM Cloud® Identity and Access Management(IAM), come mostrato nella seguente richiesta di esempio:
curl -X DELETE 'https://iam.cloud.ibm.com/v1/policies/$POLICY_ID' \
-H 'Authorization: Bearer $TOKEN' \
-H 'Content-Type: application/json'
DeletePolicyOptions options = new DeletePolicyOptions.Builder()
.policyId(examplePolicyId)
.build();
service.deletePolicy(options).execute();
const params = {
policyId: examplePolicyId,
};
iamPolicyManagementService.deletePolicy(params)
.then(res => {
console.log(JSON.stringify(res, null, 2));
})
.catch(err => {
console.warn(err)
});
response = iam_policy_management_service.delete_policy(
policy_id=example_policy_id
).get_result()
print(json.dumps(response, indent=2))
options := iamPolicyManagementService.NewDeletePolicyOptions(
examplePolicyID,
)
response, err := iamPolicyManagementService.DeletePolicy(options)
if err != nil {
panic(err)
}
Non è possibile eliminare un criterio se l'ID oggetto contiene un ID servizio bloccato.
Revisione degli accessi assegnati nella console
Se devi controllare il tuo accesso assegnato in un account a cui sei stato aggiunto, completa la seguente procedura:
- Nella console IBM Cloud , fare clic su Gestisci > Accesso (IAM) e selezionare Utenti o ID di servizio, a seconda dell'identità che si desidera rivedere.
- Selezionare il proprio nome o l'ID del servizio.
- Rivedere l'accesso assegnato nella scheda Accesso.
Se hai bisogno di ulteriore accesso, devi contattare il proprietario dell'account per aggiornare il tuo accesso o contattare l'amministratore del servizio o dell'istanza del servizio per aggiornare la politica di accesso.
Revisione dell'accesso assegnato mediante l'uso della CLI
Se si desidera rivedere l'accesso assegnato in un account a cui si è stati aggiunti, è possibile utilizzare il comando ibmcloud iam user-policies il comando. Questo esempio elenca i criteri dell'utente name@example.com:
ibmcloud iam user-policies name@example.com
Verifica degli accessi assegnati tramite l'API
Utilizzando l'API, è possibile recuperare solo tutti i criteri dell'account e filtrare in base ai valori degli attributi. È possibile verificare l'accesso assegnato a un account andando su Gestione > Utenti > nome_utente > Accesso nella console IBM Cloud. Per recuperare le politiche, chiamare il sito IBM Cloud® Identity and Access Management(IAM)API per la gestione dei criteri come mostrato nel seguente esempio di richiesta:
curl -X GET 'https://iam.cloud.ibm.com/v1/policies?account_id=$ACCOUNT_ID' \
-H 'Authorization: Bearer $TOKEN' \
-H 'Content-Type: application/json'
ListPoliciesOptions options = new ListPoliciesOptions.Builder()
.accountId(exampleAccountId)
.iamId(EXAMPLE_USER_ID)
.build();
Response<PolicyList> response = service.listPolicies(options).execute();
PolicyList policyList = response.getResult();
System.out.println(policyList);
const params = {
accountId: exampleAccountId,
iamId: exampleUserId
};
iamPolicyManagementService.listPolicies(params)
.then(res => {
console.log(JSON.stringify(res.result, null, 2));
})
.catch(err => {
console.warn(err)
});
policy_list = iam_policy_management_service.list_policies(
account_id=example_account_id, iam_id=example_user_id
).get_result()
print(json.dumps(policy_list, indent=2))
options := iamPolicyManagementService.NewListPoliciesOptions(
exampleAccountID,
)
options.SetIamID(exampleUserID)
policyList, response, err := iamPolicyManagementService.ListPolicies(options)
if err != nil {
panic(err)
}
b, _ := json.MarshalIndent(policyList, "", " ")
fmt.Println(string(b))