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.

Tipi di risorsa e autorizzazioni
Tipo di risorsa Autorizzazioni
pianificazione delle risorse
  • RESOURCE_SCHEDULE_INSPECT
  • RESOURCE_SCHEDULE_READ
  • RESOURCE_SCHEDULE_CREATE
  • RESOURCE_SCHEDULE_UPDATE
  • RESOURCE_SCHEDULE_MOVE
  • RESOURCE_SCHEDULE_DELETE
risorsa-pianificazione-richiesta di lavoro
  • RESOURCE_SCHEDULE_WORKREQUEST_INSPECT
  • RESOURCE_SCHEDULE_WORKREQUEST_READ

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

Tipi di variabile
Digita Digita descrizione
String Testo in formato libero
Elenco(tipo) Elenco di entità o stringhe
Entità OCID
Origini variabili
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.

Variabili richieste scheduler risorse
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.

Variabili automatiche
Variabile Tipo di variabile Descrizione

Per le richieste avviate dall'utente:

request.user.id

request.groups.id

ENTITY

LIST(ENTITY)

OCID dell'utente chiamante

OCID dei gruppi di request.user.id

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 in un compartimento di cui il principal è membro

La tabella seguente mostra le variabili dinamiche, che vengono calcolate in modo implicito da IAM AuthZ.

Variabili dinamiche
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 tagSlug fornito dal servizio su ogni richiesta.)

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.

Autorizzazioni necessarie per ogni operazione API di Resource Scheduler
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

Mappa di Metaverb
Tipo risorsa Ispeziona Lettura Usa Gestisci
RESOURCE-SCHEDULE RESOURCE_SCHEDULE_INSPECT RESOURCE_SCHEDULE_READ nessuno
  • RESOURCE_SCHEDULE_CREATE
  • RESOURCE_SCHEDULE_UPDATE
  • RESOURCE_SCHEDULE_UPDATE
  • RESOURCE_SCHEDULE_MOVE
  • RESOURCE_SCHEDULE_DELETE
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.

Nota

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.

L'esempio seguente consente a un utente di gestire un tipo di risorsa in un compartimento in cui 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.

L'esempio riportato di seguito mostra come consentire a 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