Okta Privileged AccessのAgent Lifecycle Management Hooksを構成する

Okta Privileged Accessのライフサイクルフック機能は、Linuxシステムのローカルユーザーグループの構成にメンバーシップの変更が加えられた時に、通知を受信するサーバーのイベントバスを公開します。Okta Privileged Access管理者は、スクリプトを使ってライフサイクルフックをカスタマイズして、これらの変更が発生したときに実行する必要があるルーチンタスクに適合させることができます。ローカルスクリプトもグローバルに実行され、/usr/lib/sftd/hooksディレクトリの下位にあるすべてのファイルに一致させます。発生しているイベントに応じて、影響を受けるオペレーティングシステムのオブジェクトを検出し、どのスクリプトが実行されているかを確認できます。「ディレクトリとスクリプト」と「ライフサイクル関連の環境変数」を参照してください。

手順

次の手順は、ホストでのセットアップ実行ガイドとして利用してください。

Okta Privileged Accessのアクティブセッションが開いており、ターゲットLinuxサーバーに対する管理者権限があることを事前に確認してください。

カスタムスクリプトを作成する

  1. コマンドラインから、SSHを使用してターゲットLinuxサーバーの1つに接続します。

  2. sudo suを実行してrootに切り替えます

  3. 次のコマンドでフックスクリプト用のディレクトリを作成します。

    mkdir -p /usr/lib/sftd/hooks/user-created.d

  4. テキストエディターで01- copyfiles.shという名前のファイルを作成し、次のbashスクリプトをコピーして貼り付けます。

    注: 次の例では、エージェントライフサイクルフックの基本的な機能を示します。必要に応じて、特定の統合に適合するよう、スクリプトを変更します。

    #!/bin/bash SOURCE_FILES=/opt/sourcefiles cp $SOURCE_FILES/App?/home/"${SFT_HOOK_USERNAME}" if [ $? -eq 0 ] then echo "Successfully copied source files into /home/"${SFT_HOOK_USERNAME}"" >> /tmp/sourcefiles.out else echo "Error Copying source files into /home/"${SFT_HOOK_USERNAME}"" >> /tmp/sourcefiles.out
  5. スクリプト実行のアクセス権限を許可する:

    chmod 755 01-copyfiles.sh

  6. ls -lコマンドを実行し、権限が正しく設定されていることを確認します。出力は次のようになります:

    -rwxr-xr-x 1 root root 316 Jun 30 14:54 01-copyfiles.sh

ソースファイルを作成する

  1. 次のコマンドを実行して、ソースファイル用のディレクトリを作成します。

    cd /opt mkdir sourcefiles
  2. 次に、以下のコマンドでソースファイルを作成します。

    cd sourcefiles touch App1 App2 App3
  3. lsコマンドを実行して、App1App2App3ファイルが作成されていることを確認します。

Oktaユーザーを作成して承認済みのグループに割り当てる

  1. Okta Privileged Accessアプリケーションを管理するOktaテナントの管理者ダッシュボードOkta管理者として移動します。
  2. [Applications(アプリケーション)]ページに移動して[Okta] [Okta Privileged Access]をクリックします。
  3. [Assignments(割り当て)][Groups(グループ)]を順にクリックします。アプリケーションが割り当てられているグループの名前を覚えておいてください。
  4. Okta管理コンソールで、[ディレクトリ][ユーザー][ユーザーを追加]を選択します。
  5. 作成するユーザーには覚えやすい名前を付けます。
  6. Okta管理コンソール[ディレクトリ]に移動し、[グループ]をクリックします。ここで、手順3でOkta Privileged Accessに割り当てられたグループを選択します。

Linuxサーバーでのユーザーのプロビジョニングを検証する

  1. Linuxコマンドプロンプトで次のコマンドを入力してください。

    cd /home ls -l
  2. 新しいユーザーのホームディレクトリが作成されていることを確認します。

  3. cd <username>を実行して、新規ユーザーのホームディレクトリに切り替えます。

    ユーザーのホームディレクトリにApp1App2App3ファイルが存在することは、lsコマンドを使って確認できます。

これは、Okta Privileged Access エージェントのライフサイクルフックを使用して、Oktaのユーザーとグループにホスト-ローカル自動化、システム、外部ユーザーディレクトリを統合する方法を示しています。

関連情報

ディレクトリとスクリプト

次のセクションでは、発生したユーザーイベントに応じて呼び出されるディレクトリとスクリプトについて詳しく説明します。イベントタイプはSFT_HOOK_EVENT変数にキャプチャされます。「ライフサイクル関連の環境変数」を参照してください。

  • user-created

    ユーザーが作成されると、/usr/lib/sftd/hooks/user-created.d/*.sh内のスクリプトが実行されます。

  • user-updated

    ユーザーが更新されると、/usr/lib/sftd/hooks/user-updated.d/*.sh内のスクリプトが実行されます。

  • user-deleted

    ユーザーが削除されると、/usr/lib/sftd/hooks/user-deleted.d/*.sh内のスクリプトが実行されます。

ライフサイクル関連の環境変数

フック 環境変数 内容
user-created SFT_HOOK_EVENT user-created
user-created SFT_HOOK_USERNAME alice.smith
user-updated SFT_HOOK_EVENT user-updated
user-updated SFT_HOOK_USERNAME alice.smith
user-deleted SFT_HOOK_EVENT user-deleted
user-deleted SFT_HOOK_USERNAME alice.smith