keenauth_role
La ressource keenauth_role gère un rôle de l'environnement et l'ensemble complet de ses autorisations. Un rôle qui appartient à une seule organisation est une ressource différente, keenauth_organization_role. La source de données keenauth_role lit un rôle par id ou 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"
}
Cycle de vie
keyest unique dans l'environnement, apparaît dans la revendicationorg_roleset ne peut pas être modifiée : une nouvelle clé remplace le rôle.namecomporte de 1 à 128 caractères etdescriptionau plus 1024. Ni l'un ni l'autre ne peut commencer ou se terminer par un espace, car l'API les tronque.permission_idsest l'ensemble complet (500 au maximum). Il est écrit par une requête distincte après les champs du rôle ; si cette requête échoue à la création, le rôle reste dans l'état marqué comme altéré (tainted) et est remplacé lors de l'application suivante. Une autorisation ajoutée ou retirée ailleurs est rétablie par l'application suivante.is_privilegedmarque un rôle privilégié. En libre-service, seul un administrateur détenant le rôle d'administrateur de l'organisation peut l'attribuer, et un mappage de groupe externe vers ce rôle nécessiteroles:writeet une approbation. Rendre privilégié un rôle existant laisse ses mappages de groupes non approuvés tant qu'ils ne sont pas approuvés. La valeur par défaut estfalse; lorsque vous importez un rôle privilégié, écrivez explicitementis_privileged = true, sinon l'application suivante rendra le rôle non privilégié.- Les mises à jour et les suppressions envoient
If-Matchavec le dernier ETag lu. Si le rôle a changé après la création du plan, l'API répond412et rien ne change ; relancezplan. - Avec
force_destroy = true, un rôle attribué est lui aussi supprimé et ses attributions sont retirées dans la même requête ; sinon, la suppression d'un rôle attribué échoue avec409 role_in_use. Un rôle utilisé comme rôle d'administrateur ou de membre par défaut d'une organisation ne peut pas être supprimé du tout. Modifier uniquementforce_destroyn'envoie aucune requête. - Les attributions de rôles aux utilisateurs et les appartenances ne sont pas des ressources. Ce sont des données personnelles et elles ne sont jamais enregistrées dans l'état ; gérez-les avec l'API, la CLI ou le tableau de bord.
Importation
Importez par clé ou par identifiant :
tofu import keenauth_role.billing billing
tofu import keenauth_role.billing rol_01j9zq3v8c5m2x7k4t6r1n0b3d