アクセスプロビジョニング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でアクセスリクエストを検索し、承認およびプロビジョニングステータスを返します。 |
| add_user_to_group | 従業員をGoogleグループに追加します。 |
| remove_user_from_group | 従業員をGoogleグループから削除します。 |
| list_group_members | Googleグループの現在のメンバーを一覧表示します(読み取り専用)。 |
アクセスプロビジョニングMCPサーバーのインストール
構築済みMCPサーバーをプロジェクトにインストールするには、次の手順を完了します:
Workatoアカウントにサインインします。
AI Hub > Enterprise MCPに移動します。
+ Create MCP serverをクリックします。
接続済みアプリを使用して構築済みMCPサーバーを開始するセクションに移動し、使用する構築済みMCPサーバーを選択します。
Use this serverをクリックします。
サーバー名フィールドにMCPサーバーの名前を入力します。
場所ドロップダウンメニューを使用して、MCPサーバーのプロジェクトを選択します。
Connectionsセクションに移動し、アプリアカウントに接続します。
MCPサーバーテンプレートで使用するコネクションタイプを選択します。
- User's connection: MCPサーバーツールは、アプリケーションに接続するユーザーのIDと権限に基づいてアクションを実行します。ユーザーは自分の認証情報で認証し、スキルを実行します。
- Your connection: このオプションでは、レシピビルダーによって確立されたコネクションを使用し、通常のアプリコネクションと同じ原則に従います。
コネクションタイプを選択
検証済みユーザーアクセスの認証要件
OAuth 2.0認可コードグラントを使用するアプリコネクションのみが、ユーザーのコネクションで利用できます。詳細については、検証済みユーザーアクセスを参照してください。
次のセクションで、アプリ固有のコネクション設定手順を完了します。
アクセスプロビジョニングのコネクション設定
アクセスプロビジョニング MCPサーバーをセットアップするには、次のコネクションを設定します:
- Okta:
deployment.enabled_systemsにoktaが含まれる場合に必要です。 - Googleワークスペース:
deployment.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サーバーは、動作とデフォルトを制御するために、次のプロジェクトレベルのプロパティをサポートしています:
| プロジェクトレベルのプロパティ | 説明 |
|---|---|
deployment.enabled_systems | このデプロイメントがアプリアクセスをプロビジョニングする対象のIDシステムを選択します。 okta、google、またはその両方を選択します。 |
deployment.group_directory_enabled | このデプロイメントでGoogleグループメンバーシップツール(add_user_to_group、remove_user_from_group、list_group_members)を公開するかどうかを設定します。 Googleワークスペースコネクションが存在する場合、デフォルトはtrueです。 |
approval.app_sensitivity_tiers | 各アプリケーションを、provision_app_accessで人による承認が必要かどうかを決定する機密度階層(tier1、tier2、またはtier3)にマッピングします。マッピングされていないアプリのデフォルトはtier2です。 |
approval.group_sensitivity_tiers | 各Googleグループを、add_user_to_groupおよびremove_user_from_groupで人による承認が必要かどうかを決定する機密度階層にマッピングします。デフォルトはtier2です。 |
approval.per_app_approver_map / approval.per_group_approver_map | 特定のアプリケーションまたはグループを承認者IDにマッピングします。デフォルトはapproval.default_approverです。 |
approval.default_approver | 特定のマッピングがないアプリケーションまたはグループについて、デフォルトの承認者メールまたはSlackハンドルを入力します。 |
approval.escalation_timers_hours | 保留中の承認について、リマインダーの送信、セカンダリ承認者へのエスカレーション、またはリクエストの自動拒否までの時間数を入力します。デフォルトは、リマインダーが24、エスカレーションが48、自動拒否が72です。 |
system_auto_detection.map | 各アプリケーション名を、解決先のIDシステム(oktaまたはgoogle)にマッピングします。 provision_app_accessでシステム名が明示されていない場合、サーバーは常にこのマッピングを使用します。 |
audit.log_retention_days | Request Lifecycle Table内のレコードを保持する日数を入力します。デフォルトは365です。 |
server_limits.max_justification_chars | 正当な理由または理由フィールドで受け入れる最大文字数を入力します。デフォルトは500です。 |
server_limits.rate_limit_calls_per_minute | 呼び出し元のAIクライアントごとに、このデプロイメントが1分あたりに実行できる最大呼び出し数を入力します。デフォルトは20です。 |
プロジェクトレベルのプロパティ設定手順を表示
プロジェクトレベルのプロパティを設定するには、次の手順を実行します:
Workatoアカウントにサインインし、プロジェクトに移動します。
MCPサーバーを含むプロジェクトに移動します。
Settingsタブをクリックします。
Settingsタブをクリックします。
プロジェクトプロパティを選択します。
更新するプロジェクトプロパティに移動し、Edit(鉛筆)アイコンをクリックします。
Valueフィールドに移動して変更を加えます。たとえば、deployment.group_directory_enabledをfalseに設定するか、audit.log_retention_daysを90に設定します。
アクセスプロビジョニング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.
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?
はじめに
MCP serverのツールは、Overviewページのツールセクションで表示および管理できます。ツール管理では、次の機能を利用できます:
ツールを開始する必要があります
LLMは、MCP server connector内のアクティブなツールにのみアクセスできます。
最終更新日: