Tinesで実現するアプリケーションのジャストインタイムアクセス自動化

IT環境におけるIAMの課題

メールへのログイン、仮想マシンのプロビジョニング、CRMプラットフォームへのアクセスなど、アイデンティティとアクセス管理(IAM)は、現代の業務を支えるデジタル基盤です。しかし、組織が成長するにつれて、これらのアイデンティティを保護するための制御は、今日の環境の規模、速度、複雑さに追いつかなくなることが頻繁にあります。

この状況でよく問題となるのが、機密性の高いアプリケーションに対する一時的なアクセス、すなわちジャストインタイム(JIT)アクセスを付与するプロセスです。ITチームは、ビジネス部門が生産性を維持するために即座のアクセスを期待する一方で、セキュリティチームや監査担当者は抜け穴のない明確な記録を求めるため、板挟みになることがよくあります。

手動プロセスのリスク:「アクセス規模の拡大=リスク規模の拡大」

TinesのIT運用技術者であるStephen McKenna氏は、「アクセス規模の拡大はリスク規模の拡大を意味する」と指摘しています。従業員の入社、異動、退職といったイベントは、一連の変更を伴います。多くの組織では、これらの変更がパッチワークのようなシステム間で手動で処理されています。一部のアプリケーションはシングルサインオン(SSO)に迅速に統合されますが、その他は手動でのプロビジョニングが必要です。開発者がデバッグのために本番環境へのアクセスを必要とする場合や、契約者が特定のプロジェクトのためにアクセスを必要とする場合など、ユーザーがJITアクセスを必要とすると、手動プロセスは通常、以下の問題を引き起こします。

  • 対応時間の遅延:ユーザーがチケットを送信しても、アナリストが対応するまでキューに留まります。
  • 永続的な特権の蔓延:一度アクセスが付与されると、アナリストがそのアクセスを取り消すのを忘れがちです。「一時的」なアクセスが永続的になり、攻撃者が悪用できる特権の蓄積につながります。
  • 監査の悪夢:誰がアクセスを承認したか、いつ付与されたか、いつ取り消されたかといった証拠が、メール、Slackメッセージ、チケットコメントなどに散在します。オーケストレーションがなければ、アカウントは残り続け、特権が積み重なっていきます。

解決策:自動化された時間制限付きプロビジョニング

「Grant Temporary Application Access」ワークフローは、JITアクセスリクエストのライフサイクル全体を自動化します。Jira Software、Okta、Slackなどのツールを連携させることで、アクセスが迅速に付与され、適切に承認され、そして最も重要なことに、期限が来たら自動的に取り消されることを保証します。ワークフローの概要は以下の通りです。

  1. セルフサービスリクエスト:ユーザーはTines Page(ドラッグ&ドロップで作成できるシンプルなウェブフォーム)から、必要なアプリケーション(例: 「AWS Production Console」)、必要なアクセス期間(例: 「2時間」)、および業務上の正当な理由を選択します。
  2. 自動承認ルーティング:申請が提出されると、Tinesはユーザーのマネージャーまたはアプリケーションオーナーを自動的に識別します。Slack(またはMicrosoft Teams)経由で、リクエストの詳細と「承認」または「拒否」ボタンを含むリッチな通知が承認者に送信されます。
  3. 即時プロビジョニング:承認されると、ワークフローはOktaへのAPIコールをトリガーし、ユーザーをそのアプリケーションに関連付けられた特定のOktaグループに追加します。これは、IT管理者が手動でクリックすることなく、即座に実行されます。同時に、コンプライアンス目的の承認記録のために、Jira Softwareでチケットが作成または更新されます。
  4. 「タイムアウト」設定:これが重要なセキュリティステップです。ワークフローは、ユーザーが指定した期間(例: 2時間)「待機」状態に入ります。
  5. 自動取り消し:タイマーが満了すると、Tinesは起動し、クリーンアップを実行します。Okta APIを再度呼び出してグループからユーザーを削除し、実質的にアクセスを取り消します。最後に、Jiraチケットを「Closed」に更新し、ユーザーにSlackでセッションが終了したことを通知します。

Tinesワークフロー導入のメリット

このインテリジェントなワークフローを導入することで、以下の3つの主要な柱にわたって即座に価値が提供されます。

  • 最小権限の強制:アクセス取り消しを自動化することで、「残存アカウント」のリスクを排除します。アクセスは必要な期間のみ付与され、攻撃対象領域を削減します。
  • 監査対応のコンプライアンス:リクエスト、承認、プロビジョニング、取り消しの各ステップがJiraに自動的に記録されます。監査担当者がアクセス制御の証拠を求めた場合でも、スクリーンショットを追いかけることなく、単一の信頼できる情報源を提供できます。
  • ユーザーエクスペリエンスの向上:ユーザーは、数日ではなく数分でアクセスを取得できます。管理者が昼食から戻ってOktaのボタンをクリックするのを待つ必要がありません。
  • 効率性:ITアナリストは、グループへのユーザーの追加や削除といった反復的な「クリック作業」から解放され、より価値の高いセキュリティタスクに集中できるようになります。

ワークフローの設定方法

このワークフローは、Tines Libraryで事前構築済みのストーリーとして利用可能です。

  1. ストーリーのインポート:Tines Libraryにアクセスし、「Grant temporary application access」を検索します。「Import」をクリックしてテンプレートをテナントにインポートします。
  2. ツールの接続:ワークフローは、外部ツールと通信するために資格情報に依存します。Okta(グループメンバーシップの管理)、Jira Software(リクエストと承認の追跡)、Slack(通知と対話型承認メッセージ)を接続する必要があります。
  3. Tines Pageの構成:ワークフローで「Page」要素を開きます。組織固有のアプリケーションに合わせてフォームフィールドをカスタマイズできます。例えば、「Salesforce Admin」、「AWS Write Access」、「GitHub Admin」などのドロップダウンメニューを作成できます。
  4. ポリシーの設定:セキュリティポリシーに合わせてロジックを調整します。最大期間を4時間に制限したり、非常に機密性の高いアプリケーションにはセカンドレベルの承認を要求したりできます。Tinesは柔軟であるため、これらの追加のロジックブロックをキャンバスにドラッグ&ドロップできます。
  5. テストと公開:テストリクエストを実行して、Slack通知が発火し、Oktaグループの変更が期待通りに行われることを確認します。確認後、Pageを公開し、チームとリンクを共有します。

元記事: https://www.bleepingcomputer.com/news/security/how-to-automate-just-in-time-access-to-applications-with-tines/