keenauth_role
La risorsa keenauth_role gestisce un ruolo dell'ambiente e il suo insieme completo di autorizzazioni. Un ruolo che appartiene a un'organizzazione è una risorsa diversa, keenauth_organization_role. La data source keenauth_role legge un ruolo tramite id o key.
resource "keenauth_permission" "invoices_read" {
api_id = "api_01j9zq3v8c5m2x7k4t6r1n0b3d"
value = "invoices:read"
}
resource "keenauth_role" "billing" {
key = "billing"
name = "Billing"
description = "Invoices and payment methods."
permission_ids = [keenauth_permission.invoices_read.id]
}
data "keenauth_role" "billing" {
key = "billing"
}
Ciclo di vita
keyè unica nell'ambiente, compare nel claimorg_rolese non può essere modificata: una nuova key sostituisce il ruolo.nameha da 1 a 128 caratteri edescriptional massimo 1024. Nessuno dei due può iniziare o terminare con uno spazio bianco, perché l'API li tronca.permission_idsè l'insieme completo (al massimo 500). Viene scritto con una richiesta separata dopo i campi del ruolo; se quella richiesta fallisce in fase di creazione, il ruolo resta nello state come tainted e viene sostituito al successivo apply. Un'autorizzazione aggiunta o rimossa altrove viene ripristinata dal successivo apply.is_privilegedcontrassegna un ruolo privilegiato. In self-service solo un amministratore che possiede il ruolo di admin dell'organizzazione può assegnarlo, e un mapping di gruppo esterno che lo riguarda richiederoles:writee un'approvazione. Rendere privilegiato un ruolo esistente lascia i suoi mapping di gruppo non approvati finché non vengono approvati. Il valore predefinito èfalse; quando importi un ruolo privilegiato, scrivi esplicitamenteis_privileged = true, altrimenti il successivo apply renderà il ruolo non privilegiato.- Gli aggiornamenti e le eliminazioni inviano
If-Matchcon l'ETag letto per ultimo. Se il ruolo è cambiato dopo la creazione del piano, l'API risponde412e nulla cambia; esegui di nuovoplan. - Con
force_destroy = trueanche un ruolo assegnato viene eliminato e le sue assegnazioni vengono rimosse nella stessa richiesta; altrimenti l'eliminazione di un ruolo assegnato fallisce con409 role_in_use. Un ruolo usato come ruolo di admin o di membro predefinito di un'organizzazione non può essere eliminato in alcun modo. Modificare soloforce_destroynon invia alcuna richiesta. - Le assegnazioni di ruoli a utenti e le appartenenze non sono risorse. Sono dati personali e non finiscono mai nello state; gestiscile con l'API, la CLI o la dashboard.
Import
Importa per key o per ID:
tofu import keenauth_role.billing billing
tofu import keenauth_role.billing rol_01j9zq3v8c5m2x7k4t6r1n0b3d