keenauth_management_client

keenauth_management_client 리소스는 app_type = "management"인 애플리케이션의 management API 접근 설정을 지정합니다. 즉, 애플리케이션의 머신 간(M2M) 클라이언트가 management API를 호출할 수 있는 권한과 IP 허용 목록을 설정합니다. 애플리케이션당 레코드는 최대 하나이며, 레코드는 애플리케이션 ID로 식별됩니다.

최소 권한

이 리소스는 management API에 대한 접근 권한을 부여합니다. 권한 범위를 좁게 유지하십시오.

설정을 적용하는 API 키는 자신이 가진 권한과 네트워크만 부여할 수 있습니다.

resource "keenauth_application" "ops" {
  key      = "ops-automation"
  name     = "Ops automation"
  app_type = "management"
  party    = "first_party"
}

resource "keenauth_management_client" "ops" {
  application_id = keenauth_application.ops.id
  permissions    = ["users:read", "applications:read"]
  allowed_cidrs  = ["203.0.113.0/24"]
}

서명 키

이 리소스에는 비밀 값이나 키가 포함되지 않습니다. CLI 또는 대시보드에서 POST /v1/applications/{application_id}/credentials(type: public_key)를 사용해 애플리케이션의 공개 키를 등록하십시오. 이 리소스에서 API는 jwks_uri와 public_keys를 거부합니다.

plan에서의 allowed_cidrs

오류

오류 의미
403 insufficient_permissions 이 레코드는 API 키로만 관리할 수 있습니다. client_id + private_key가 아니라 api_key로 구성된 provider를 사용하십시오. API 키를 사용하는 경우 권한이 제한된 키에 management-clients:read 또는 management-clients:write가 없습니다.
403 permission_escalation 레코드에 API 키가 가지고 있지 않은 권한이나 네트워크가 포함되어 있습니다.
생성 시 404 API 키의 환경에 해당 애플리케이션이 없습니다.
409 애플리케이션에 이미 레코드가 있습니다. 가져오기를 사용하십시오.
application_id에서 422 애플리케이션 유형이 management가 아닙니다.
412 plan 이후 레코드가 변경되었습니다. 변경된 내용은 없으니 plan을 다시 실행하십시오.

가져오기

애플리케이션 ID로 가져오십시오.

tofu import keenauth_management_client.ops app_01j9zq3v8c5m2x7k4t6r1n0b3d