Criteri IAM scheduler risorse
Informazioni su come utilizzare i criteri IAM per garantire l'accesso sicuro allo scheduler risorse per creare e gestire pianificazioni scheduler risorse e altre funzionalità.
Criteri di autenticazione, autorizzazione e obbligatori
Resource Scheduler utilizza i criteri IAM per garantire l'accesso sicuro allo scheduler risorse, creare pianificazioni e utilizzare pianificazioni per gestire le risorse. Ogni servizio in Oracle Cloud Infrastructure è integrato con IAM per l'autenticazione e l'autorizzazione di tutte le interfacce (console, SDK o CLI e API REST).
L'utente o un altro amministratore dell'organizzazione deve impostare gruppi , compartimenti e criteri che controllano l'utente il livello e il tipo di accesso ai servizi e alle risorse. Questi criteri controllano chi può creare nuovi utenti, creare e gestire la rete cloud, creare istanze, creare bucket, scaricare oggetti e così via. Per ulteriori informazioni, vedere Gestione dei domini di Identity. Per dettagli specifici sulla scrittura delle policy relative a ognuno dei vari servizi, consulta ilriferimento per le policy.
Criteri richiesti
Per creare e gestire le pianificazioni, è necessario creare un criterio per concedere agli utenti l'autorizzazione per creare e modificare le pianificazioni. È inoltre necessario creare un criterio per concedere alle schedulazioni l'autorizzazione per gestire le risorse.
Gli esempi riportati di seguito mostrano il funzionamento di questi criteri.
Esempio1. Questo criterio consente agli utenti di creare e modificare le schedulazioni
Consentire al gruppo ResourceScheduleUsers di visualizzare ed elencare le pianificazioni delle risorse nella tenancy.
Allow ResourceScheduleUsers to inspect resource-schedule in tenancy
Esempio 2
Questo criterio consente alla pianificazione delle risorse di eseguire un'azione sulla risorsa di destinazione.
Quando viene creata, per impostazione predefinita, una pianificazione risorse non dispone dell'autorizzazione per eseguire l'azione sulle risorse di destinazione, pertanto è necessario concedere l'autorizzazione.
L'esempio seguente consente a qualsiasi utente di eseguire un'azione su una risorsa di destinazione.
Allow any-user to manage <resource_type (instance, database, and others)> in compartment id <target_compartment_ocid> where all {request.principal.type='resourceschedule',request.principal.id='ocid_of_resourceschedule'}
Gli utenti non amministratori che devono utilizzare le risorse di Oracle Cloud Infrastructure di proprietà dell'azienda devono contattare il proprio amministratore per impostare i propri ID utente. L'amministratore può confermare a quale compartimento o compartimenti questi utenti devono avere accesso.
Per utilizzare qualsiasi operazione dell'API Resource Scheduler, è necessario essere autorizzati in un criterio IAM. Se non si dispone dell'autorizzazione, contattare l'amministratore. Se si è amministratori che devono scrivere criteri per concedere l'accesso agli utenti, vedere Gestione dei domini di Identity
Tipi di risorsa
Nella tabella seguente sono elencati i tipi di risorsa utilizzati nello scheduler risorse e le autorizzazioni necessarie per utilizzarli.
Tipo di risorsa | Autorizzazioni |
---|---|
pianificazione delle risorse |
|
risorsa-pianificazione-richiesta di lavoro |
|
Variabili supportate
Resource Scheduler supporta tutte le variabili generali.
Per ulteriori informazioni, vedere Variabili generali per tutte le richieste e le variabili elencate nella tabella seguente:
Convenzioni di denominazione
Le variabili sono minuscole e separate da trattini.
target.tag-namespace.name # "name"indicates a unique key
target.display-name # "display-name"indicates a non-unique description
Vedere Variabili generali per tutte le richieste e le variabili elencate nella tabella riportata di seguito.
Tipi e origini variabili
Digita | Digita descrizione |
---|---|
String | Testo in formato libero |
Elenco(tipo) | Elenco di entità o stringhe |
Entità | OCID |
Origine | Descrizione origine |
---|---|
Richiesta | Viene dall'input della richiesta |
Derivato | Viene dalla richiesta |
Memorizzato | Viene dal servizio, input mantenuto |
Calcolato | Calcolato dai dati del servizio |
Variabili per ogni richiesta
La tabella seguente mostra le variabili obbligatorie, fornite dai servizi per ogni richiesta.
Variabile | Tipo di variabile | descrizione; |
---|---|---|
target.compartment.id |
ENTITY |
OCID della risorsa primaria per la richiesta |
request.operation |
STRING |
ID dell'operazione, ad esempio GetUser per la richiesta |
target.resource.kind |
STRING |
Nome del tipo della risorsa primaria per la richiesta |
La tabella seguente mostra le variabili automatiche, fornite dall'SDK per ogni richiesta.
Variabile | Tipo di variabile | Descrizione |
---|---|---|
Per le richieste avviate dall'utente: request.user.id
|
ENTITY
|
OCID dell'utente chiamante OCID dei gruppi di |
request.principal.group.tag.
|
STRING |
Il valore di ogni tag in un gruppo di cui il principal è membro |
request.principal.compartment.tag.
|
STRING |
Il valore di ogni tag in un compartimento di cui il principal è membro |
La tabella seguente mostra le variabili dinamiche, che vengono calcolate in modo implicito da IAM AuthZ.
Variabile | Tipo di variabile | Descrizione |
---|---|---|
request.principal.group.tag.<tagNS>.<tagKey>
|
STRING |
Il valore di ogni tag in un gruppo di cui il principal è membro. |
request.principal.compartment.tag.<tagNS>.<tagKey |
STRING |
Il valore di ogni tag nel compartimento che contiene il principal. |
target.resource.tag.<tagNS>.<tagKey> |
STRING |
Il valore di ogni tag nella risorsa di destinazione. (Calcolato sulla base di |
target.resource.compartment.tag.<tagNS>.<tagKey>
|
STRING |
Valore di ogni tag nel compartimento contenente la risorsa di destinazione. |
Dettagli per le combinazioni verbo-tipo di risorsa
Le tabelle seguenti mostrano le autorizzazioni e le operazioni API coperte da ciascun verbo. Il livello di accesso è cumulativo come si va da inspect
> read
> use
> manage
. Un segno più (+) in una cella di tabella indica l'accesso incrementale rispetto alla cella direttamente sopra di essa, mentre "no extra" indica l'assenza di accesso incrementale.
Per informazioni dettagliate sulle autorizzazioni, vedere Autorizzazioni.
Autorizzazioni necessarie per ogni operazione API
Elencare gli attributi specifici dell'operazione resi disponibili al compilatore dei criteri. Per un tipo di risorsa specifico, è necessario disporre dello stesso set di attributi in tutti i task (get, list, delete e altro ancora). L'unica eccezione riguarda il task Create
, in cui non si dispone ancora dell'ID per l'oggetto, pertanto non è possibile disporre di un attributo target.RESOURCE-KIND.id per Create
.
Per informazioni sulle autorizzazioni, vedere Autorizzazioni.
Nella tabella seguente sono elencate le operazioni dell'API Scheduler risorse in un ordine logico, raggruppate per tipo di risorsa.
API | Autorizzazioni necessarie per utilizzare l'operazione | Operation |
---|---|---|
ListSchedules | RESOURCE_SCHEDULE_INSPECT |
Restituisce un elenco di schedulazioni risorse. |
GetSchedule | RESOURCE_SCHEDULE_READ |
Recupera una pianificazione delle risorse. |
CreateSchedule | RESOURCE_SCHEDULE_CREATE |
Creare una pianificazione delle risorse. |
UpdateSchedule | RESOURCE_SCHEDULE_UPDATE |
Aggiornare una pianificazione delle risorse. |
DeleteSchedule | RESOURCE_SCHEDULE_DELETE |
Eliminare una pianificazione risorse. |
ChangeScheduleCompartment | RESOURCE_SCHEDULE_MOVE |
Modifica compartimento pianificazione risorse |
ListWorkRequests | RESOURCE_SCHEDULE_WORKREQUEST_INSPECT |
Elenca le richieste di lavoro associate a una schedulazione risorse. |
GetWorkRequest | RESOURCE_SCHEDULE_WORKREQUEST_READ |
Recupera una richiesta lavoro. |
Mappa di Metaverb
Tipo risorsa | Ispeziona | Lettura | Usa | Gestisci |
---|---|---|---|---|
RESOURCE-SCHEDULE |
RESOURCE_SCHEDULE_INSPECT |
RESOURCE_SCHEDULE_READ |
nessuno |
|
RESOURCE-SCHEDULE-WORKREQUEST |
RESOURCE_SCHEDULE_WORKREQUEST_INSPECT |
RESOURCE_SCHEDULE_WORKREQUEST_READ |
nessuno | nessuno |
Criteri di esempio
È possibile utilizzare questi criteri di esempio come modelli per creare e gestire (creare, eliminare, attivare e altri) i propri criteri di Scheduler risorse.
Per utilizzare le pianificazioni delle risorse, è necessario creare un criterio per concedere agli utenti l'autorizzazione per creare una pianificazione ed è necessario creare un criterio per concedere a una pianificazione l'autorizzazione per gestire le risorse.
Esempio 1
Questo criterio consente agli utenti di gestire le pianificazioni delle risorse nella propria tenancy.
Questo esempio consente a un gruppo di utenti denominato di gestire le pianificazioni delle risorse in tutta la tenancy:
Allow group <group_name> to manage resource-schedule-family in tenancy
Ad esempio:
Allow group YourResourceScheduleAdminGroup to manage resource-schedule-family in tenancy
Esempio 2
Questo criterio concede agli utenti l'autorizzazione a gestire le pianificazioni delle risorse in un compartimento specifico.
L'esempio riportato di seguito consente a un gruppo di gestire le pianificazioni delle risorse in un compartimento denominato.
Allow group <group_name> to manage resource-schedule-family in compartment <compartment_name>
Ad esempio:
Allow group ResourceScheduleAdmins to manage resource-schedule-family in compartment ResourceScheduleCompartment
Esempio 3
Questo criterio concede a una pianificazione delle risorse l'autorizzazione per eseguire un'azione su una risorsa.
Quando viene creata una pianificazione risorse, per impostazione predefinita, non dispone dell'autorizzazione per eseguire l'azione sulle risorse di destinazione. È necessario concedere l'autorizzazione a tale pianificazione.
Questo criterio fornisce un'autorizzazione di pianificazione per gestire le risorse predefinite, ad esempio le istanze in un compartimento.
all{request.principal.type='resourceschedule',request.principal.id='<ocid_of_resourceschedule>
:Allow any-user to manage <resource_type> in compartment id <compartment_ocid> where all{request.principal.type='resourceschedule',request.principal.id='<ocid_of_resourceschedule>'}
Ad esempio:
Allow any-user to manage instance in compartment id ocid.compartment.oc1...q7fa where all{request.principal.type='resourceschedule',request.principal.id='ocid.resourceschedule.oc1.iad.axgr...dt8zb'}
Esempio 4
Questo criterio di esempio mostra come concedere un'autorizzazione di pianificazione delle risorse per eseguire un'azione come gruppo dinamico.
Creare innanzitutto un gruppo dinamico per identificare le risorse per le quali si desidera autorizzare l'accesso. Il gruppo dinamico richiede una o più regole di corrispondenza, come mostrato nell'esempio riportato di seguito.
L'esempio seguente mostra come creare un gruppo dinamico per lo scheduler di risorse denominato resource-scheduler-dynamic-group
.
ALL {resource.type='resourceschedule', resource.id='ocid.resourceschedule.oc1.iad.axgr...dt8zb'}
Quindi, impostare i criteri appropriati.
dynamic-group
resource-scheduler-dynamic-group
di gestire functions-family
nella tenancy.Allow dynamic-group resource-scheduler-dynamic-group to manage functions-family in tenancy