AWSとのリアルタイムの同期を構成する

これは早期アクセス機能です。有効にする場合は、Oktaサポートにお問い合わせください。

リアルタイムの同期により、アドバンストサーバーアクセスはAWSによる生成されたインスタンスイベントのコンピューティングを登録できます。通常、サーバー検出は毎日行われますが、この機能ではアドバンストサーバーアクセスが通知を受信した直後にサーバーを追加または削除できます。リアルタイムの同期は、特定プロジェクト内の指定したクラウドアカウントに関連付けられているエンドポイントに対し、AWS ExentBridgeによるwebhookイベントの送信を有効にすることで機能します。

イベントは通常コンピューティングインスタンスが開始または終了した際に生成されます。開始イベントの場合、アドバンストサーバーアクセスは関連プロジェクトに対して自動的にサーバーを追加します。ユーザーが接続可能になる前に、検出済みのサーバーにアドバンストサーバーアクセスのサーバーエージェントをインストールする必要があります。終了イベントの場合、アドバンストサーバーアクセスはプロジェクトのインベントリからサーバーを自動的に削除します。

  • サーバーの変更がアドバンストサーバーアクセスに同期されるまで、10分ほどかかる場合があります。
  • イベントブリッジの領域間イベントを使用してイベントを単一の領域に一元化しない限り、サーバーを含む各AWS領域に対して個別のルールを構成する必要があります。
  1. プロジェクトの詳細情報を確認します。
    1. アドバンストサーバーアクセス管理コンソールに移動します。
    2. [Projects (プロジェクト)]ページに移動してプロジェクトを選択します。
    3. [Enrollment (登録)]タブに移動してAWSアカウントを選択します。
    4. [Instance Lifecycle Monitoring (インスタンスライフスタイル監視)]で、[Create Client ID (クライアントIDを作成する)] & [Secret (シークレット)]をクリックします。
    5. [Client Secret Created (作成したクライアントシークレット)]ウィンドウでクライアントID&シークレットを保存します。
      :ウィンドウを閉じた後にこの情報を取得することはできません。この情報をなくした場合、新しいクライアントID&シークレットを生成する必要があります。
    6. [OK]をクリックします。
    7. 後で使用するためにWebhook URLを記録します。
  2. 接続を作成します。
    1. Amazon EventBridgeコンソールに移動します。
    2. [API destinations (API送信先)]ページに移動します。
    3. [Connections (接続)]タブに移動して[Create Connection (接続を作成する)]をクリックします。
    4. [Create Connection (接続を作成する)]ウィンドウで名前と説明を入力します。
    5. 認証タイプには [OAuth Client Credentials (OAuthクライアントの資格情報)]を選択します。
    6. 資格情報を構成します。
      フィールドアクション
      認証エンドポイント https://app.scaleft.com/v1/oauth_token を入力します。
      HTTPメソッド [Post (ポスト)]を選択します。

      OAuth HTTPパラメーター

      1. [Parameter (パラメーター)]で[Body field (本文フィールド)]を選択します。
      2. [Key (キー)]でgrant_typeと入力します。
      3. [Value (値)]でclient_credentialsと入力します。
      クライアントID アドバンストサーバーアクセスのコンソールで記録したクライアントIDを入力します。
      クライアントシークレット アドバンストサーバーアクセスのコンソールで記録したクライアントシークレットを入力します。
    7. [Create(作成)]をクリックします。
  3. ターゲットを作成します。
    詳細については、AWSドキュメントを参照してください。

    1. [API destinations (API送信先)]ページに移動して[Create API destinations (API送信先を作成する)]をクリックします。
    2. [Create API destinations (API送信先を作成する)]ウィンドウで名前と説明を入力します。
    3. API送信先エンドポイントについては、アドバンストサーバーアクセスのコンソールで記録してWebhook URLを入力します。
    4. HTTPについては、[Post (ポスト)]を選択します。
    5. [Use an existing connection (既存の接続を使用する)]をクリックして以前作成した接続を選択します。
    6. [Create(作成)]をクリックします。
  4. ルールを作成します。
    詳細については、AWSドキュメントを参照してください。
    1. [Rules (ルール)]ページに移動して[Create rule (ルールを作成する)]をクリックします。
    2. ルールの名前を入力します。
    3. [Define pattern (パターンを定義する)]で[Event pattern (イベントパターン)]を選択してから、[Custom pattern (カスタムパターン)]を選択します。
    4. [Event pattern (イベントパターン)]の次に[Edit (編集)]をクリックします。
    5. 以下のJSONパターンを入力します。
      パターン説明
      { "source": ["aws.ec2"], "detail-type": ["EC2 Instance State-change Notification"], "detail": { "state": ["pending", "terminated"] } } EC2インスタンスがpendingまたはterminatedステータスに変わったら通知を送信します。
    6. [Target (ターゲット)]には、以前作成したターゲットAPI送信先を選択します。
    7. [Create(作成)]をクリックします。

ルールを作成した後で、一致するイベントが生じたときにAWSはアドバンストサーバーアクセスに通知を送信します。アドバンストサーバーアクセスは、これらの通知を使用して関連プロジェクト内のサーバーインベントリを更新します。

これは確認できます。