メインコンテンツへスキップ

カスタマーサービス

顧客対応プラットフォームのシングルサインオン:サポートチームのためのOpenID Connect設定ガイド

お客様との会話を一日中扱う担当者は、別のパスワードではなく会社のアカウントでサインインすべきです。OpenID Connect SSOの仕組み、有効にする前に決めておくこと、オンプレミス版 MonoChat での設定手順を紹介します。

MonoChatチーム 更新日: 2 分で読めます

目次
  1. サポートチームにとってサインインが重要な理由
  2. OpenID Connect のサインインの流れ
  3. SSOを有効にする前に決める5つのこと
  4. オンプレミス版 MonoChat でSSOを設定する
  5. 既存の担当者:アカウントはどう連携されるか
  6. SSOは身元、ロールはアクセス権
  7. 事前に把握しておきたい制限
  8. MonoChat のなかでのSSOの位置づけ
  9. 出典

顧客対応プラットフォームのシングルサインオン(SSO)とは、担当者が別のパスワードではなく、Microsoft Entra ID、Okta、Keycloak、AD FS、Google Workspace などのIDプロバイダー上にある会社のアカウントでサインインする仕組みです。その土台となる標準規格が OpenID Connect(OIDC)です。オンプレミス版 MonoChat では、インストール全体に対して一度設定し、自社のメールドメインに限定し、さらにSSOを唯一のサインイン方法にすることもできます。

サポートチームには、SSOを気にするはっきりした理由があります。担当者のアカウントを開けば、見られる範囲の WhatsApp、Instagram、Messenger の会話がすべて表示されるからです。氏名、電話番号、注文内容、ときには健康や支払いに関する相談も含まれます。このアカウントは社内の他のアカウントと同じルールに従うべきで、退職した日には使えなくなっているべきです。

日本では LINE が顧客対応の主役ですが、訪日のお客様、海外のお客様、東南アジアやインド、中東、中南米の取引先とやり取りする企業では WhatsApp を使う場面があります。海外向けのチャネルを担当者が共有する以上、サインインの管理は後回しにできません。

サポートチームにとってサインインが重要な理由

認証情報の盗難や悪用は、いまでも企業への侵入経路として最も多いものの一つです。Verizon の「2025 Data Breach Investigations Report」は、確認された12,195件の侵害を分析し、認証情報の悪用(22%)と脆弱性の悪用(20%)が最初の攻撃経路の上位であったと報告しています。

メッセージングプラットフォームが独自のパスワードを持つと、担当者ごとに認証情報がもう一組増えます。使い回されるパスワードが一つ増え、退職時に消し忘れるアカウントが一つ増え、多要素認証や条件付きアクセスの対象外になるログインが一つ増えます。SSOなら、プラットフォームはパスワードを一切目にしません。パスワードの確認、MFA やアクセスポリシーの適用はIDプロバイダーが行い、誰がサインインしたかだけをプラットフォームに伝えます。

OpenID Connect のサインインの流れ

OpenID Connect は OAuth 2.0 の上に載ったID層です。MonoChat が使うのは認可コードフローです。

  1. 担当者がサインインページの SSO ボタンをクリックします。MonoChat がポップアップでIDプロバイダーのサインインページを開きます。
  2. 担当者がそこでサインインします。MFA やポリシーはIDプロバイダー側のものが適用されます。
  3. IDプロバイダーが、ワンタイムコードを付けてブラウザーを MonoChat に戻します。
  4. MonoChat サーバーが、サーバー間通信でコードをIDトークンに交換します。トークンがブラウザーを通ることはありません。
  5. MonoChat がIDトークンを検証し、担当者をサインインさせます。

IDトークンとは、OpenID Connect の仕様の言葉を借りれば「a security token that contains Claims about the Authentication of an End-User」です。MonoChat は次の条件をすべて満たす場合にだけ受け付けます。

  • IDプロバイダーの鍵のいずれかで署名されている。鍵は、サインインのたびにディスカバリードキュメント(<issuer>/.well-known/openid-configuration)から読み込みます。
  • 発行者(iss)が自社の発行者で、対象者(aud)が MonoChat のクライアントIDであり、有効期限(exp)が切れていない。
  • MonoChat がリクエストと一緒に送った nonce を含んでいる。これでトークンがこのサインインに結び付き、再送攻撃を防げます。
  • 本人のメールアドレスを含み、プロバイダーがそのアドレスを未確認だと示していない。

リクエストには PKCE(S256)と state 値も使われ、サインインリクエストの有効期間は10分で、一度しか使えません。

SSOを有効にする前に決める5つのこと

決めること選択肢サポートチームへのおすすめ
サインインできる人すべてのドメイン、または自社のメールドメインのみ自社のドメインに限定する
初回サインイン時の動作アカウントを作成する、または招待された人だけ受け付けるIDプロバイダーが在籍者を管理しているなら、アカウントを作成する
既存アカウントの扱いメールが確認済みなら初回サインインでSSOを連携、またはパスワードで一度サインインしたあとに連携プロバイダーが email_verified を送るかどうかによる
他のサインイン方法パスワードとソーシャルサインインを残す、またはSSOのみ全員がSSOを連携したあとはSSOのみ
新しいワークスペースを作れる人アカウントを持つ誰でも、または適切なロールを持つ人だけ社内向けのインストールでは、自由なワークスペース作成をオフにする

設定を変更する前に、この5点を書き出しておきましょう。セキュリティ担当者から必ず聞かれる質問であり、答えによって必要な設定が決まります。

オンプレミス版 MonoChat でSSOを設定する

SSOはワークスペースごとではなく、サーバー設定でインストール全体に対して設定します。詳しい手順はヘルプセンターのシングルサインオンのページにあります。ここでは要点を紹介します。

1. IDプロバイダーに MonoChat を登録する

クライアントシークレット付きのウェブアプリケーションを作成し、次を設定します。

  • リダイレクト URI は https://<your MonoChat domain>/api/oauth/oidc/redirect。
  • 認可コードグラント。
  • スコープは openid email profile。
  • クライアント認証は、シークレットを HTTP Basic で送る方式(client_secret_basic)。

IDトークンに email クレームが含まれることを確認し、クライアントID、クライアントシークレット、発行者を控えておきます。

2. 発行者を一字一句そのままコピーする

発行者は、プロバイダーのディスカバリードキュメントにある issuer の値です。代表的な形式は次のとおりです。

IDプロバイダー発行者
Microsoft Entra IDhttps://login.microsoftonline.com/<tenant id>/v2.0
Oktahttps://<your Okta domain>/oauth2/default または https://<your Okta domain>
Keycloakhttps://<your Keycloak host>/realms/<realm>
AD FS 2016 以降https://<your AD FS host>/adfs
Google Workspacehttps://accounts.google.com

ブラウザーで <issuer>/.well-known/openid-configuration を開き、末尾にスラッシュがあればそれも含めて、値を一文字ずつそのままコピーしてください。両者が一致しないと MonoChat はすべてのサインインを拒否します。最初のテストが失敗する原因として最も多いのがこれです。

3. 設定を追加して再起動する

公開してよい部分(発行者、クライアントID、リダイレクトのパス、スコープ、ボタンの文言)は public.oauth.oidc に、クライアントシークレットは oauth.oidc に置き、サーバー上にだけ残します。ここには、先ほどの表で決めた内容を反映する2つのオプションがあります。

  • autoCreateAccounts: true は、サインアップが招待制であっても、SSOでの初回サインイン時に MonoChat のアカウントを作成します。
  • allowedEmailDomains: ["yourcompany.com"] は、他のドメインのアドレスをすべて拒否します。Google Workspace では、個人の Google アカウントなら任意のドメインのアドレスを使えるため、MonoChat はメールアドレスではなくアカウントの Workspace ドメイン(hd クレーム)を確認します。

ボタンの文言は、各ユーザーの言語で「SSOでサインイン」と表示されるか、設定したラベルになります。たとえば「Northwind SSOでサインイン」のようにできます。

4. SSOを唯一の方法にする(安全に)

全員がSSOを連携し終えたら、許可するサインイン方法(public.auth.methods)を ["oidc"] に設定します。サインインページには SSO ボタンだけが表示され、サーバーはパスワードとソーシャルサインインを拒否します。ルートのスーパーユーザーは /auth/signin?fallback=1 でパスワードによるサインインを続けられるため、IDプロバイダーが停止してもインストールが使えなくなることはありません。新しいSSOアカウントが自分のワークスペースを作れないようにするには、public.disableTenantCreation を true にします。

5. 4パターンのサインインをテストする

  1. アカウントがある人:ポップアップが閉じ、サインインできる。
  2. アカウントがない人:アカウントが作成される。アカウント作成を有効にしていなければ拒否される。
  3. 別のドメインの人:ドメインを制限していれば拒否される。
  4. SSOのみの設定でのパスワードサインイン:拒否される。ルートの代替サインインは使える。

既存の担当者:アカウントはどう連携されるか

多くのチームは、すでに MonoChat のアカウントを持つ担当者がいる状態でSSOを有効にします。MonoChat は、同じメールアドレスの既存アカウントにSSOを次のどちらかの方法で連携します。

  • 自動で連携:SSOでの初回サインイン時に、インストールが統合を許可していて、IDトークンがアドレスを確認済みだと示している場合(email_verified: true)。
  • パスワードで一度サインインしたあとに連携:それ以外のすべての場合。MonoChat は一度パスワードでサインインするよう促し、そのときにSSOを連携します。ワークスペースへの招待を承認した場合も連携されます。

Microsoft Entra ID と AD FS は email_verified を送りません。この2つを使う場合は、SSOのみに切り替える前に、全員がSSOを連携し終えるまでパスワードサインインを許可しておくか、全員を招待し直してください。

SSOは身元、ロールはアクセス権

サインインで得られるのはアカウントであり、会話へのアクセス権ではありません。MonoChat のアカウントは複数のワークスペースに所属でき、ワークスペースを選ぶ前にサインインします。ワークスペースから招待され、ロールを付与されて初めてそのワークスペースが表示され、ロールによって見られるチャネル、会話、設定が決まります。設定方法はチーム受信トレイのロールと権限をご覧ください。

この分担は、監査担当者が確認したがるポイントでもあります。

  • 入社: IDプロバイダーで本人を作成し、ワークスペースの管理者が招待してロールを選ぶ。
  • 異動: MonoChat でロールやワークグループを変更する。サインインは変わらない。
  • 退職: IDプロバイダーで本人を無効化し、MonoChat のワークスペースからも削除する。

事前に把握しておきたい制限

  • モバイルアプリ。 MonoChat の Android / iOS アプリは、まだSSOに対応していません。SSOだけをサインイン方法にすると、担当者はスマートフォンからサインインできなくなります。モバイルを使う担当者のために別の方法を残すか、デスクトップのみのシフトで運用する計画を立ててください。
  • サインアウト。 MonoChat からサインアウトしても、IDプロバイダーからはサインアウトされません。IDプロバイダー側でサインアウトしても、MonoChat からはまだサインアウトされません。退職者をIDプロバイダーで無効化すれば新しいサインインは止まりますが、ワークスペースからも削除してください。
  • ネットワーク。 利用者のブラウザーが /api/oauth/oidc/authorize とリダイレクトのパスに到達できること、そして MonoChat サーバーがプロバイダーのディスカバリードキュメント、トークンエンドポイント、鍵セットに HTTPS で到達できることが必要です。IPアドレスでインストールを制限している場合も、これらの経路を考慮してください。

MonoChat のなかでのSSOの位置づけ

SSOはインストール全体のサーバー設定で行うため、現時点ではオンプレミス版 MonoChat のものです。オンプレミスは、自社のサーバーでプラットフォームを動かし、独自の LLM とベクトルデータベースを使いたいチーム向けのエンタープライズのオプションです。エンタープライズのページでオンプレミスの内容を、セキュリティのページでロールベースのアクセス制御、ワークスペースの分離、認証・認定を紹介しています。AI 導入におけるデータの扱いについては、AI チャットボットのプライバシーチェックリストをご覧ください。

まず製品そのものを試したい場合は、app.monochat.ai の無料の Basic プランで、担当者1名とチャネル1つを利用できます。

出典

よくある質問

よくあるご質問

顧客対応プラットフォームのSSOとは何ですか?

シングルサインオン(SSO)では、担当者が別のパスワードを使わず、Microsoft Entra ID、Okta、Google Workspace などのIDプロバイダー上にある会社のアカウントでメッセージングプラットフォームにサインインします。IDプロバイダーが本人確認を行い、プラットフォームがサインインを受け付けます。

SSOでサインインすると、すべてのワークスペースにアクセスできますか?

いいえ。サインインで得られるのはアカウントであり、アクセス権ではありません。MonoChat では、ワークスペースから招待され、ロールを付与されて初めてそのワークスペースが表示され、ロールによって見られるチャネルや会話が決まります。

SSOを唯一のサインイン方法にできますか?

オンプレミス版 MonoChat では可能です。許可するサインイン方法を OpenID Connect のみに設定すると、サインインページには SSO ボタンだけが表示され、パスワードとソーシャルサインインは拒否されます。IDプロバイダーが停止してもインストール全体が使えなくならないよう、ルートのスーパーユーザーにはパスワードによる代替サインインが残ります。

MonoChat のSSOに対応しているIDプロバイダーは?

OpenID Connect に対応していればどのプロバイダーでも利用できます。ヘルプセンターに、Microsoft Entra ID、Okta、Keycloak、AD FS 2016 以降、Google Workspace の発行者(issuer)の形式を掲載しています。

MonoChat のモバイルアプリはSSOに対応していますか?

まだ対応していません。SSOだけをサインイン方法にしていると、担当者はモバイルアプリにサインインできません。対応するまでは、モバイルを使う担当者向けに別の方法を許可しておいてください。

app.monochat.ai でSSOは使えますか?

SSOはインストール全体のサーバー設定で行うため、現時点ではオンプレミス版で設定します。ご利用環境については、エンタープライズのページからお問い合わせください。

Growthプランの初月無料

WhatsApp、Instagram、Messengerを1つの受信トレイで運用

MonoChatで無料で始めましょう。チーム受信トレイ、AI アシスタント、テンプレート、キャンペーンを、Metaの公式APIで利用できます。

1ビジネスにつき1コード • 有効期間30日 • カード不要

$150で始められます。

受け取る