
# keenauth_directory_role_mapping

La risorsa `keenauth_directory_role_mapping` associa un gruppo di una directory SCIM a un ruolo. I membri del gruppo ottengono il ruolo nell'organizzazione della directory.

```terraform
resource "keenauth_role" "engineer" {
  key  = "engineer"
  name = "Engineer"
}

resource "keenauth_directory_role_mapping" "engineering" {
  directory_id       = keenauth_directory.acme_okta.id
  directory_group_id = "dsg_01j9zq3v8c5m2x7k4t6r1n0b3d"
  role_id            = keenauth_role.engineer.id
}
```

## I gruppi arrivano dal provider di identità

Il provider di identità fornisce i gruppi alla directory tramite SCIM, quindi il gruppo deve esistere prima di associarlo. Per elencare i gruppi di una directory:

```shell
keenauth directories groups list <directory_id>
```

Un gruppo che non si trova nella directory viene rifiutato con `422` (`unknown_group`). Un gruppo può essere associato una sola volta per directory, e una directory può avere al massimo 500 associazioni.

## Solo creazione, lettura ed eliminazione

L'API di gestione non può modificare un'associazione. Ogni argomento (`directory_id`, `directory_group_id`, `role_id`) sostituisce l'associazione quando lo modifichi. Il provider legge l'associazione dall'elenco delle associazioni della directory a ogni aggiornamento; un'associazione o una directory eliminata al di fuori del provider viene rimossa dallo stato e pianificata di nuovo.

## Ruoli privilegiati

Associare un ruolo privilegiato richiede una chiave API con `roles:write` oltre a `directories:write`; senza di essa l'API risponde con `403` (`privileged_role_mapping_forbidden`). Un'associazione di questo tipo viene creata già approvata.

Se un ruolo diventa privilegiato dopo la creazione dell'associazione, questa resta non approvata: `approved_at` è vuoto e il ruolo non viene concesso. Il provider non approva le associazioni; ricreala con una chiave che abbia `roles:write`.

## Argomenti

- `role_id` è un ruolo dell'ambiente o un ruolo dell'organizzazione della directory; qualsiasi altro ruolo viene rifiutato con `422` (`unknown_role`).
- `organization_id`, `role_privileged`, `approved_at`, `created_at` e `id` sono di sola lettura.

## Importazione

Importa con l'ID della directory e l'ID dell'associazione:

```shell
tofu import keenauth_directory_role_mapping.engineering dir_01j9zq3v8c5m2x7k4t6r1n0b3d/rmp_01j9zq4a2b3c4d5e6f7g8h9j0k
```
