アクセスプロビジョニングMCPサーバー
アクセスプロビジョニング MCPサーバーを使用すると、LLMはOkta, Google Workspace, and Workbot for Slackとやり取りし、自然な会話を通じて従業員セルフサービスのアクセスリクエストを実行できます。アプリケーションアクセスのリクエスト、送信済みリクエストのフォローアップ、Googleグループメンバーシップの管理を行うツールを提供します。
用途
アクセスプロビジョニング MCPサーバーを使用して、次のアクションを実行します:
- ビジネス上の理由を添えて、OktaまたはGoogleワークスペースでアプリケーションへのアクセスをリクエスト
- 以前に送信したリクエストをフォローアップして、その承認およびプロビジョニングステータスを確認
- Googleグループまたは配布リストに参加
- Googleグループまたは配布リストから退出
- Googleグループのメンバーを検索
プロンプト例
次のプロンプト例を使用して、アクセスプロビジョニング MCPサーバーツールを呼び出します:
Can you get me access to Salesforce?Get me access to Workday.What happened to my Workday request from Tuesday?Is req_a1b2c3 done yet?Add me to the Marketing Google Group.Remove me from the eng-oncall group.Take me off the Marketing Google Group.Who's in the eng-oncall group?I need access to NetSuite for the Q3 close.
アクセスプロビジョニングMCPサーバーツール
アクセスプロビジョニング MCPサーバーは次のツールを提供します:
| ツール | 説明 |
|---|---|
| provision_app_access | 従業員のアプリケーションアクセスをリクエストし、プロビジョニング前にリクエストを承認にルーティングします。 |
| get_request_status | request_idでアクセスリクエストを検索し、承認およびプロビジョニングステータスを返します。 |
| check_access_status_okta | 特定のOktaアプリケーションが既にユーザーに割り当てられているかどうかを確認します(読み取り専用)。 |
| add_user_to_group | 従業員をGoogleグループに追加します。 |
| remove_user_from_group | 従業員をGoogleグループから削除します。 |
| list_group_members | Googleグループの現在のメンバーを一覧表示します(読み取り専用)。 |
アクセスプロビジョニングMCPサーバーのインストール
構築済みMCPサーバーをプロジェクトにインストールするには、次の手順を完了します:
Workatoアカウントにサインインします。
AI Hub > Enterprise MCP > Custom servers に移動します。
+ Create MCP serverをクリックします。
接続済みアプリを使用して構築済みMCPサーバーを開始するセクションに移動し、使用する構築済みMCPサーバーを選択します。
Use this serverをクリックします。
サーバー名フィールドにMCPサーバーの名前を入力します。
場所ドロップダウンメニューを使用して、MCPサーバーのプロジェクトを選択します。
Connectionsセクションに移動し、アプリアカウントに接続します。
MCPサーバーテンプレートで使用するコネクションタイプを選択します。
- User's connection: MCPサーバーツールは、アプリケーションに接続するユーザーのIDと権限に基づいてアクションを実行します。ユーザーは自分の認証情報で認証し、スキルを実行します。
- Your connection: このオプションでは、レシピビルダーによって確立されたコネクションを使用し、通常のアプリコネクションと同じ原則に従います。
コネクションタイプを選択
検証済みユーザーアクセスの認証要件
OAuth 2.0認可コードグラントを使用するアプリコネクションのみが、ユーザーのコネクションで利用できます。詳細については、検証済みユーザーアクセスを参照してください。
次のセクションで、アプリ固有のコネクション設定手順を完了します。
アクセスプロビジョニングのコネクション設定
アクセスプロビジョニング MCPサーバーをセットアップするには、次のコネクションを設定します:
- Okta:
enabled_systemsにoktaが含まれている場合に必須。 - Google Workspace:
enabled_systemsにgoogleが含まれている場合、またはGoogleグループのメンバーシップツールを有効にする場合に必須。 - Workbot for Slack:必須です。承認カードを配信し、承認者のIDを解決します。
アクセスプロビジョニングのロール要件
各ツールの可用性は、接続されているアカウントが保持する権限に依存します。必要な権限なしでツールを呼び出すと、部分的な結果ではなくpermission_deniedの結果が返されます。
Oktaには、Organization AdministratorまたはSuper Administratorによって生成されたAPIトークンが必要です。 Okta APIトークンは細かなスコープをサポートしていないため、トークンはその管理者の完全な権限を継承します。詳細については、APIトークンを作成を参照してください。
Googleワークスペースには、少なくとも次のスコープが必要です:
- ドメイン全体の委任が設定されたサービスアカウント
admin.directory.groupスコープadmin.directory.group.memberスコープ
スコープの完全なリストについては、Googleワークスペース管理者SDK認可ガイドを参照してください。
- Workbot for Slackには、少なくとも次のスコープが必要です:
- 承認カードを投稿するための
chat:write - 承認者のIDを解決するための
users:read
- 承認カードを投稿するための
スコープの完全なリストについては、Workbot for Slack権限リファレンスを参照してください。
Oktaコネクション設定手順
Oktaコネクション設定手順を表示
このデプロイメントでは、OktaのAPIキー認証メソッド(Okta APIトークン)を使用します。 Okta APIトークンは、Oktaの認可コードグラントおよびクライアント資格情報メソッドのような詳細なOAuthスコープをサポートしていないため、トークンを生成した管理者の権限を継承します。
APIキーの生成
APIキーの権限と制限
APIキーを作成するには、Oktaの管理者権限が必要です。続行する前に、管理者としてログインしていることを確認してください。
Workatoでは、コネクションで使用するユーザーとAPIキーに組織管理者またはスーパー管理者権限があることが必要です。 APIキーは、そのキーを作成した管理者からすべての権限を継承し、特定のリソースまたは操作に制限することはできません。
詳細については、APIトークンを作成を参照してください。
OktaでAPIキーを生成するには、次の手順を完了します:
Oktaにサインインします。
セキュリティ>API>トークンに移動します。
トークンを作成をクリックして、APIキーを生成します。キーは、それを作成した管理者の権限を継承します。
APIキーベースの認証を使用したOktaへの接続
WorkatoでOktaへのAPIキーコネクションを作成するには、次の手順を実行します:
作成 > コネクションをクリックするか、Cを2回押します。
New connectionページで、コネクションとしてOktaを検索して選択します。
コネクション名フィールドに、コネクションの一意の名前を入力します。
Okta APIキーコネクションのセットアップ
Authentication typeドロップダウンメニューを使用してAPI keyを選択します。
Okta domainフィールドにOktaドメイン名を入力します。例: mycompany.okta.comまたはmytest.oktapreview.com。入力するドメイン名に、mycompany-admin.okta.comなどの-adminが含まれていないことを確認してください。このURLはUIからOkta管理コンソールにアクセスするために使用され、OAuthエンドポイントではありません。
Oktaインスタンスで生成したAPIキーを入力します。
接続をクリックします。
Google Workspaceコネクション設定手順
Google Workspaceコネクション設定手順を表示
このデプロイメントにはサービスアカウント認証が必要です。 GoogleワークスペースコネクタのOAuth 2.0認証方式では、コネクションが1人の従業員自身のGoogle IDに紐付けられるため、他の従業員に代わってグループメンバーシップの変更を書き込むことはできません。
コネクション設定を完了するには、GoogleワークスペースAPIを有効にする必要があります。
サービスアカウント認証に必要なスコープ
サービスアカウントを使用してGoogleワークスペースに正常に接続するには、次の必要な権限があることを確認してください:
admin.directory.groupadmin.directory.group.member
認証が完了すると、サービスアカウントは、コネクション設定時に指定したメールアドレスに基づいてユーザーになりすまします。
Googleサービスアカウントの設定
Googleサービスアカウント設定手順を表示
Googleサービスアカウントは、Google Cloudプロジェクト(GCP)に関連付けられた専用のGoogleアカウントであり、ユーザーに代わってAPIリクエストを実行できます。
サービスアカウントには次の利点があります:
- 継続的な運用: サービスアカウントにより、個々のユーザー権限が変更された場合でも運用を継続できます。
- 専用の権限: サービスアカウントは、共有先として指定したプロジェクトにのみアクセスできます。
- 専用のAPIクォータ: GCPを通じてサービスアカウントのAPIクォータを管理し、Googleに直接クォータの引き上げをリクエストできます。
サービスアカウントの詳細については、Googleサービスアカウントのドキュメントを参照してください。
Googleサービスアカウントを設定するには、次の手順を実行します:
GCPプロジェクトでサービスアカウントを作成します。
IAMと管理>サービスアカウントに移動します。ダッシュボードのスコープが、サービスアカウントを含むプロジェクトに設定されていることを確認します。
ダッシュボードのスコープを確認します。
使用するサービスアカウントのメールをクリックします。
使用するサービスアカウントのメールをクリックします。
サービスアカウントのメールをコピーし、後でコネクションを設定するために保存します。
アカウントのメールをコピーします。
キータブに移動します。
秘密鍵を生成し、JSON形式でダウンロードします。キーは1回しかダウンロードできません。
JSONファイルを開き、秘密鍵全体を-----BEGIN PRIVATE KEY-----から-----END PRIVATE KEY-----\nまで(両端を含む)コピーして、後でコネクションを設定するために保存します。
サービスアカウントを使用してGoogleワークスペースに接続
Googleワークスペースサービスアカウントのコネクション手順を表示
サービスアカウント認証には、次の前提条件が必要です:
作成 > コネクションをクリックするか、Cを2回押します。
コネクションとしてGoogleワークスペースを検索して選択します。
コネクション名フィールドに、コネクションの一意の名前を入力します。
ロケーションドロップダウンメニューを使用して、コネクションを保存するプロジェクトを選択します。
認証タイプドロップダウンメニューを使用して、サービスアカウントを選択します。
サービスアカウントのメールアドレスをGCPプロジェクトサービスアカウントメールフィールドに入力します。
GCPプロジェクトサービスアカウントメールを取得
秘密鍵とユーザーメールを入力します。ダウンロード可能なJSONから秘密鍵を取得します。 -----BEGIN PRIVATE KEY-----から-----END PRIVATE KEY-----\nまでを含めます。
Googleでサインインをクリックします。
Workbot for Slackコネクション設定手順
Workbot for Slackコネクション設定手順を表示
Workbot for Slackは、Slackのblock kitを使用してインタラクティブ要素を構成し、ApproveボタンとDenyボタンを含む承認カードを設定済みの承認者に投稿します。このコネクションを作成する前にWorkbotで必要となるSlackアプリのスコープ、イベントサブスクリプション、チャネル招待など、完全な設定ガイドについては、Workbot for Slackの設定を参照してください。
Workbot for Slackコネクションを作成します。
Workbot for Slackコネクションの作成
このステップでは、WorkatoとWorkbot for Slackアカウント間のコネクションを作成します。
作成 > コネクションをクリックするか、Cを2回押します。
新規コネクションページでWorkbot for Slackを検索して選択します。
名前フィールドにコネクションの名前を入力します。
Workbot for Slackコネクション設定
ロケーションドロップダウンメニューを使用して、コネクションを保存するプロジェクトを選択します。
任意。使用予定のNLUプロバイダー(DialogFlowやAmazon Lex NLUなど)を選択します。ドロップダウンメニューに表示するには、NLUプロバイダーに接続する必要があります。
任意。詳細をクリックして、スラッシュコマンド検証トークン、カスタムヘルプコンテンツ、Slackアプリステータス(classicかどうか)、および Custom OAuth profileを設定します。
接続をクリックし、プロンプトが表示されたらSlackワークスペースにサインインして、続行をクリックしてコネクションを検証します。
設定オプション
次のリソースを使用して アクセスプロビジョニング MCPサーバーを設定します。
- Server Configurationレシピ関数は、デプロイメント全体のデフォルト値を設定します。
- Application Access Configデータテーブルは、アプリケーションごとの承認ルーティングを設定します。
レシピ関数の設定
サーバーの動作を設定するには、Server Configurationレシピ関数を編集します。
| キー | 説明 |
|---|---|
enabled_systems | このデプロイメントがどのIDシステム経由でアプリケーションアクセスをプロビジョニングするかを選択します。デフォルトはoktaです。 |
enabled_approval_channels | 承認リクエストをどこに送信するかを指定します。デフォルトはslackです。 |
group_directory_enabled | このデプロイメントでGoogleグループメンバーシップツール(add_user_to_group、remove_user_from_group、list_group_members)を公開するかどうかを設定します。デフォルトはtrueです。 |
admin_approver | 必須。 Application Access Configデータテーブルに特定の承認者が設定されていないアプリケーション用の、デフォルト承認者のメールアドレスまたはSlackハンドルを入力します。 |
escalation_reminder_hours | 保留中の承認について、リマインダーを送信するまでの時間数を入力します。デフォルトは24です。 |
escalation_escalate_hours | 保留中の承認をセカンダリ承認者にエスカレーションするまでの時間数を入力します。デフォルトは48です。 |
escalation_auto_deny_hours | サーバーが保留中の承認を自動的に却下するまでの時間数を入力します。デフォルトは72です。 |
max_justification_chars | 正当な理由または理由フィールドで受け入れる最大文字数を入力します。デフォルトは500です。 |
レシピ関数構成手順を表示
アクセスプロビジョニング MCPサーバーを構成するには、次の手順を実行します。
Workatoアカウントにサインインし、プロジェクトに移動します。
MCPサーバーを含むプロジェクトに移動します。
Server Configuration レシピを開きます。
変更する予定の設定に対応するステップ内の値を編集します。例: escalation_auto_deny_hoursを72から96に増やします。
新しい値を反映させるには、レシピを保存して開始します。
データテーブル構成
アプリケーションごとの承認設定を行うには、Application Access Configデータテーブルを編集します。
| 列 | 説明 |
|---|---|
data_source | アプリケーションが属するIDシステムを入力します: oktaまたはgoogle。 |
アプリケーション | アプリケーション名を入力します。 |
application_id | アプリケーションに対するIDシステムの内部IDを入力します。 |
approver_emails | 任意。このアプリケーションへのリクエストの承認者を入力します。デフォルトはadmin_approverです。 |
enabled | provision_app_accessがこのアプリケーションに対するリクエストを作成できるかどうかを設定します。一致しない、または無効化されているアプリケーションはinvalid_appを返します。 |
auto_approve | このアプリケーションに対するリクエストが人的承認をスキップして即時にプロビジョニングされるかどうかを設定します。 |
データテーブル構成手順を表示
アクセスプロビジョニングMCPサーバーツールの使用方法
使用可能なツールの詳細については、次のセクションを参照してください。
provision_app_accessツール
provision_app_accessツールは、指定したビジネス上の理由を添えて従業員のアプリケーションアクセスをリクエストし、そのリクエストを承認にルーティングします。アプリへのアクセスをリクエストすると、LLMはこのツールを使用します。システムを指定しない場合、ツールはIDシステムを自動的に解決します。この機能自体はアクセスを付与しません。承認とプロビジョニングは別個に行われます。
質問例:
Can you get me access to Salesforce?I need Tableau access for the Q3 close.Get me access to Workday.I need access to NetSuite for the finance close.
get_request_statusツール
get_request_statusツールは、request_idでアクセスリクエストを検索し、その承認およびプロビジョニングステータスを返します。すでに送信したリクエストについて質問すると、LLMはこのツールを使用します。
質問例:
What happened to my Workday request from Tuesday?Is req_a1b2c3 done yet?Check the status of my Salesforce request.
check_access_status_oktaツール
check_access_status_oktaツールは、Oktaアプリケーションがあなたに割り当てられているかどうかを確認します。あなたが自身のアクセスについて問い合わせたときに、LLMはこのツールを使用します。このツールは読み取り専用です。
質問例:
Salesforce へのアクセス権は既にありますか?Okta で Workday が自分に割り当てられていますか?Tableau へのアクセス権が既にあるかどうかをリクエスト前に確認してください。
add_user_to_groupツール
add_user_to_groupツールは、従業員をGoogleワークスペースグループに追加します。グループへの参加をリクエストすると、LLMはこのツールを使用します。
質問例:
Add me to the Marketing Google Group.I need to join the eng-oncall group.Request access to the finance-reports distribution list.
remove_user_from_groupツール
remove_user_from_groupツールは、従業員をGoogleワークスペースグループから削除します。グループからの退出をリクエストすると、LLMはこのツールを使用します。
質問例:
Remove me from the eng-oncall group.Take me off the Marketing Google Group.I'd like to leave the finance-reports distribution list.
list_group_membersツール
list_group_membersツールは、Googleワークスペースグループの現在のメンバーを一覧表示します。特定のグループのメンバーを質問すると、LLMはこのツールを使用します。このツールは読み取り専用です。
質問例:
Who's in the eng-oncall group?Show me the members of the Marketing Google Group.Is Dana in the finance-reports distribution list?
はじめに
Details タブの Tools セクションで MCP サーバーのツールを表示および管理します。ツール管理では、次の機能を利用できます:
ツールを開始する必要があります
LLMは、MCP server connector内のアクティブなツールにのみアクセスできます。
最終更新日: