keenauth_management_client

keenauth_management_client リソースは、app_type = "management" のアプリケーションの管理 API アクセスを設定します。具体的には、アプリケーションのマシン間 (M2M) クライアントが管理 API を呼び出す際の権限と IP 許可リストを設定します。アプリケーションにつき記録は最大 1 件で、記録はアプリケーション ID で識別されます。

最小権限

このリソースは管理 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 を拒否します。

プランにおける allowed_cidrs

エラー

エラー 意味
403 insufficient_permissions これらの記録を管理できるのは API キーのみです。client_id + private_key ではなく、api_key で設定したプロバイダを使用してください。API キーの場合、制限付きキーに management-clients:read または management-clients:write がありません。
403 permission_escalation 記録が、API キーが持たない権限またはネットワークを持つことになります。
作成時の 404 指定したアプリケーションが、API キーの環境に存在しません。
409 アプリケーションにはすでに記録があります。インポートしてください。
application_id 上の 422 アプリケーションの種類が management ではありません。
412 プラン作成後に記録が変更されました。何も変更されていないため、plan を再実行してください。

インポート

アプリケーション ID を指定してインポートします。

tofu import keenauth_management_client.ops app_01j9zq3v8c5m2x7k4t6r1n0b3d