
# keenauth_directory_role_mapping

`keenauth_directory_role_mapping` kaynağı bir SCIM dizininin grubunu bir role eşler. Grubun üyeleri dizinin organizasyonunda bu rolü alır.

```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
}
```

## Gruplar kimlik sağlayıcısından gelir

Kimlik sağlayıcısı grupları dizine SCIM ile sağlar; bu yüzden grup, eşlenmeden önce var olmalıdır. Bir dizinin gruplarını şöyle listeleyin:

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

Dizinde olmayan grup `422` (`unknown_group`) ile reddedilir. Bir grup bir dizinde bir kez eşlenebilir; bir dizinin en çok 500 eşlemesi olur.

## Yalnız oluşturma, okuma ve silme

Yönetim API'si bir eşlemeyi değiştiremez. Her bağımsız değişken (`directory_id`, `directory_group_id`, `role_id`) değiştiğinde eşlemeyi yeniden oluşturur. Sağlayıcı eşlemeyi her yenilemede dizinin eşleme listesinden okur; sağlayıcı dışında silinen eşleme ya da dizin durumdan çıkarılır ve yeniden planlanır.

## Ayrıcalıklı roller

Ayrıcalıklı bir rolü eşlemek, `directories:write` iznine ek olarak `roles:write` izni olan bir API anahtarı ister; yoksa API `403` (`privileged_role_mapping_forbidden`) döner. Böyle bir eşleme onaylı oluşur.

Rol, eşleme oluşturulduktan sonra ayrıcalıklı yapılırsa eşleme onaysız kalır: `approved_at` boştur ve rol verilmez. Sağlayıcı eşlemeleri onaylamaz; eşlemeyi `roles:write` izni olan bir anahtarla yeniden oluşturun.

## Bağımsız değişkenler

- `role_id` bir ortam rolü ya da dizinin organizasyonunun rolüdür; başka bir rol `422` (`unknown_role`) ile reddedilir.
- `organization_id`, `role_privileged`, `approved_at`, `created_at` ve `id` salt okunurdur.

## İçe aktarma

Dizin kimliği ve eşleme kimliğiyle içe aktarın:

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