ワークロード接続を構成する

ワークロード接続は、 Okta Privileged Accessと外部のIDプロバイダー(GitHub、GitLab、CircleCIなど)間の関係を確立するトラストアンカーです。このセットアップでは、職務分掌セキュリティモデルを採用しています。DevOps管理者がドラフトモードで接続を構成してテストし、セキュリティ管理者が最終レビューを行って接続をアクティブ状態に昇格させ、ライブトークンの発行を可能にします。

この信頼関係は、汎用的なJWT構成または特定のプロバイダーとの統合のいずれかを使用して確立できます。特定の統合では事前定義されたフィールドが用意されているため、より効率的にセットアップできますが、基盤となるセキュリティメカニズムは同じです。どちらの方法もワークロードIDドキュメントとして標準のJSON Web Token(JWT)を使用し、検証を成功させるには、JWKS URLや必須クレームなど、同じコアセキュリティ要素が必要です。

開始する前の確認事項

  • ドラフトワークロード接続を作成するには、DevOps管理者ロールが必要です。

  • ワークロード接続をアクティブ化または非アクティブ化するには、セキュリティ管理者ロールが必要です。

  • 次のいずれかのJWT統合方法を使用できます。

    • 汎用JWT:JWTを検証しワークロードを識別するには、JWKS URLを指定し、必要なクレーム(issaudsubなど)をすべて指定する必要があります。

    • 特定のプロバイダー:Oktaのユーザーインターフェイスには、プロバイダー固有のJWT構造に対応した事前構成済みのフィールドとネイティブサポートが用意されています。CircleCIの組織IDなどの一般的な識別子を入力すると、Oktaは必要なクレームと、場合によってはJWKS URLを自動入力します。

汎用JWTでワークロード接続を作成する

  1. Okta Privileged Accessダッシュボードで、[DevOps Administration(DevOps管理)][Workload connections(ワークロード接続)]に移動します。

  2. [Create Workload Connection(ワークロード接続を作成)]をクリックします。

  3. [Generic JWT(汎用JWT)]をクリックします。

  4. 以下の詳細を完了します。

  5. 設定 アクション
    接続名 URLとして分かりやすい一意の名前を入力します。

    接続の説明

    説明を入力します。

    トークンの存続時間(TTL)の選択

    [Amount(数値)][Unit(単位)]を入力します。これらは、Okta Privileged Accessアクセストークンが発行されてから有効な期間を定義します。

    JWKS URL

    JWKS URLを入力します。このURLは、Okta Privileged AccessがJWTのプロバイダーの署名を検証するための公開鍵を取得する場所です。

    必須クレーム

    ワークロードのJWTで満たす必要がある基準を定義します。Oktaは、デバッグスクリプトまたは jwt.ioを使用してJWTを検査することを推奨します。

    1. [Source Field Name(ソースフィールド名)]を入力します。

    2. 演算子タイプを選択します。

      • 等しい

      • 次で始まる:

      • [Exists(存在する)]

        [Exists(存在する)]を選択した場合、[Value(値)]を入力する必要はありません。

    3. [Value(値)]を入力します。

    4. 任意。[Add a condition(条件を追加)]をクリックして上記の手順を繰り返します。

  6. [Create Workload Connection(ワークロード接続を作成)]をクリックします。

CircleCIのワークロード接続を作成する

  1. Okta Privileged Accessダッシュボードで、[DevOps Administration(DevOps管理)][Workload connections(ワークロード接続)]に移動します。

  2. [CircleCI]をクリックします。

  3. [Organization ID(組織ID)]を入力します。

  4. 任意。[Scope to Project ID(プロジェクトIDのスコープ)]を選択し、IDを入力します。

  5. [Next(次へ)]をクリックします。

  6. 以下の詳細を完了します。

    設定 アクション
    接続名 URLとして分かりやすい一意の名前を入力します。

    接続の説明

    説明を入力します。

    トークンの存続時間(TTL)の選択

    [Amount(数値)][Unit(単位)]を入力します。これらは、Okta Privileged Accessアクセストークンが発行されてから有効な期間を定義します。

    JWKS URL

    JWKS URLを入力します。このURLは、Okta Privileged AccessがJWTのプロバイダーの署名を検証するための公開鍵を取得する場所です。

    必須クレーム

    ワークロードのJWTで満たす必要がある基準を定義します。Oktaは、デバッグスクリプトまたは jwt.ioを使用してJWTを検査することを推奨します。

    1. [Source Field Name(ソースフィールド名)]を入力します。

    2. 演算子タイプを選択します。

      • 等しい

      • 次で始まる:

      • [Exists(存在する)]

        [Exists(存在する)]を選択した場合、[Value(値)]を入力する必要はありません。

    3. [Value(値)]を入力します。

    4. 任意。[Add a condition(条件を追加)]をクリックして上記の手順を繰り返します。

  7. [Create Workload Connection(ワークロード接続を作成)]をクリックします。

GitLabのワークロード接続を作成する

  1. Okta Privileged Accessダッシュボードで、[DevOps Administration(DevOps管理)][Workload connections(ワークロード接続)]に移動します。

  2. [GitLab]をクリックします。

  3. [Domain(ドメイン)]名を入力します。

  4. 任意。[Scope to Group name(グループ名のスコープ)]を選択し、グループ名を入力します。

  5. 任意。[Scope to Project Name(プロジェクト名のスコープ)]を選択し、プロジェクト名を入力します。

  6. 任意。[Scope to Project ID(プロジェクトIDのスコープ)]を選択し、プロジェクトIDを入力します。

  7. [Next(次へ)]をクリックします。

  8. 以下の詳細を完了します。

    設定 アクション
    接続名 URLとして分かりやすい一意の名前を入力します。

    接続の説明

    説明を入力します。

    トークンの存続時間(TTL)の選択

    [Amount(数値)][Unit(単位)]を入力します。これらは、Okta Privileged Accessアクセストークンが発行されてから有効な期間を定義します。

    JWKS URL

    JWKS URLを入力します。このURLは、Okta Privileged AccessがJWTのプロバイダーの署名を検証するための公開鍵を取得する場所です。

    必須クレーム

    ワークロードのJWTで満たす必要がある基準を定義します。Oktaは、デバッグスクリプトまたは jwt.ioを使用してJWTを検査することを推奨します。

    1. [Source Field Name(ソースフィールド名)]を入力します。

    2. 演算子タイプを選択します。

      • 等しい

      • 次で始まる:

      • [Exists(存在する)]

        [Exists(存在する)]を選択した場合、[Value(値)]を入力する必要はありません。

    3. [Value(値)]を入力します。

    4. 任意。[Add a condition(条件を追加)]をクリックして上記の手順を繰り返します。

  9. [Create Workload Connection(ワークロード接続を作成)]をクリックします。

Google Cloud Providerのワークロード接続を作成する

  1. Okta Privileged Accessダッシュボードで、[DevOps Administration(DevOps管理)][Workload connections(ワークロード接続)]に移動します。

  2. Google Cloud Providerをクリックします。

  3. [App Client ID(アプリクライアントID)]名を入力します。

  4. 任意。[Scope to Email(メールのスコープ)]を選択し、グループ名を入力します。

  5. 任意。[Scope to Account ID(アカウントIDのスコープ)を選択し、プロジェクトIDを入力します。

  6. [Next(次へ)]をクリックします。

  7. 以下の詳細を完了します。

    設定 アクション
    接続名 URLとして分かりやすい一意の名前を入力します。

    接続の説明

    説明を入力します。

    トークンの存続時間(TTL)の選択

    [Amount(数値)][Unit(単位)]を入力します。これらは、Okta Privileged Accessアクセストークンが発行されてから有効な期間を定義します。

    JWKS URL

    JWKS URLを入力します。このURLは、Okta Privileged AccessがJWTのプロバイダーの署名を検証するための公開鍵を取得する場所です。

    必須クレーム

    ワークロードのJWTで満たす必要がある基準を定義します。Oktaは、デバッグスクリプトまたは jwt.ioを使用してJWTを検査することを推奨します。

    1. [Source Field Name(ソースフィールド名)]を入力します。

    2. 演算子タイプを選択します。

      • 等しい

      • 次で始まる:

      • [Exists(存在する)]

        [Exists(存在する)]を選択した場合、[Value(値)]を入力する必要はありません。

    3. [Value(値)]を入力します。

    4. 任意。[Add a condition(条件を追加)]をクリックして上記の手順を繰り返します。

  8. [Create Workload Connection(ワークロード接続を作成)]をクリックします。

ワークロード接続を管理する

DevOps管理者がテストの完了を確認すると、セキュリティ管理者が接続を昇格させます。

  1. Okta Privileged Accessダッシュボードで、[DevOps Administration(DevOps管理)][Workload connections(ワークロード接続)]に移動します。

  2. 管理するワークロード接続を選択します。

  3. [Actions(アクション)]をクリックし、[Edit(編集)][Activate(アクティブ化)]または[Deactivate(非アクティブ化)]を選択します。

  4. [Activate workload connection(ワークロード接続をアクティブ化)]をクリックします。

ワークロード接続が[Active(アクティブ)]に昇格すると、DevOps管理者は接続の管理者権限を失い、接続はすぐに有効なOkta Privileged Accessアクセストークンの発行を開始できるようになります。セキュリティ管理者は、接続状態を[Active(アクティブ)][Inactive(非アクティブ)] の間で切り替える能力を保持します。

関連項目

ワークロード