SAMLシングルサインオン(SSO)の概要

PendoはSAML 2.0に対応しています。この記事では、IdPが開始するログインフローとSPが開始するログインフローの両方のSAML設定プロセスについて説明します。

概要

SAML(セキュリティアサーションマークアップ言語)は、シングルサインオン(SSO)のための規格です。ユーザーは、自身のメールアドレスとパスワードではなく、企業のSSO IDプロバイダー(IdP)を利用して、サービスプロバイダー(SP、この場合はPendo)にサインインできるようになります。

ユーザーの認証は、組織独自のSAMLサーバーを実行して行えます。パスワード強度、二要素認証、SAML対応のSaaSアプリへのアクセス権は、組織で一元的に管理できます。

ユーザーは、IdPを起点としてログインすることも、PendoログインページのSSOボタンでログインする(SPを起点とするログイン)こともできます。いずれの方法でも、IdPがユーザーの承認を行うことでPendoにアクセスします。

Pendo SAML設定の追加構成オプションで、ユーザーがサブスクリプションやPendo全体にどのようにアクセスするかを詳細に制御できます。Pendoは、IdPまたはSPを起点とするログイン、サブスクリプションごとのSAML使用の義務化、ドメインでのSAML使用の義務化をサポートしています。

最新のSAML証明書は、「Pendo SAML署名証明書の更新 - 2027年4月19日」で公開しています。これには、PendoのSPメタデータが含まれます。

要件

SAML認証には、次の要件があります。

  • 現在のPendo契約にSAML SSOへのアクセスが含まれている
  • サードパーティのSAML IDプロバイダー(Google、OktaOneLoginAzureなど)
  • サブスクリプションへのアクセスを許可するユーザーIDメールドメインの一覧
  • IdPメタデータの管理と、SAMLメタデータの提供サブスクリプションのアクセスに関する決定権のあるSAML管理者。
  • メールドメインまたはサブドメインごとに1つのIdP。

SAML SSOの設定

SAML SSOは追加の有料サービスであり、お客様の技術専門チームとPendoサポートチームでメタデータを共有し、アクセス管理を設定した後にサブスクリプションで有効化されます。プラットフォームの設定方法、メタデータの抽出、アップロード方法は、IdPによって異なります。具体的な方法については、IdPにお問い合わせください。

ここでは、PendoでSSOを有効にするために必要な手順を中心に説明します。IdPのプラットフォームに精通しているテクニカルSMEが、セットアッププロセスを完了できるはずです。

1. サブスクリプションにSAML SSOへのアクセスがあることを確認します。契約内容にSAML SSOが含まれているか確認する場合、または契約内容にSAML SSOを追加する場合は、Pendo担当者にお問い合わせください。

2. IdPにログインして、SAML IdPメタデータXMLファイルをダウンロードするか、プロバイダーにパブリックURLがある場合はそれを指定します。

3. メタデータのXMLファイルまたはURLと、サブスクリプションでSSOを使用するすべてのユーザーIDのメールドメインをPendoサポートに送信します。その後、PendoサポートからDNS認証レコードが送られてくるので、それをドメインに追加します。

4. DNS検証レコード(制御の証明)をドメインに追加します。これは、SAMLの設定を進める前に必要です。

5. DNS認証レコードが更新されたら、Pendoサポートに通知します。それを受けてPendoサポートがSAML用のサブスクリプションを用意し、ACSのURL、発行者(エンティティID)、デフォルトのリレー状態、ログインURLを含むPendo SPメタデータをメールで送信します。

6. ACS URLと発行者IDをIdPに追加します。デフォルトのリレー状態は、プロバイダーによって省略可能な場合があります。

7. ACS URLと発行者URLが更新されたら、Pendoサポートに通知します。Pendoは設定を完了し、SSOを有効化します。

ドメインごとまたはサブスクリプションごとにSSOを必須にすることができます。ドメインでSSOを必須にすると、ユーザーは所属するサブスクリプションに関係なく、SAMLでサインインする必要があります。サブスクリプション内のすべてのメールドメインにも、SAMLが設定されている必要があります。

以下の追加オプションのいずれかを有効にする必要がある場合は、Pendoサポートに連絡します。

  • サブスクリプション内のユーザーのメールアドレスとパスワードによるログインを無効にします。ユーザーは引き続きSAMLを使用してサインインできます。
  • ドメインを持つユーザーの、サブスクリプションへのメールアドレスとパスワードによるログインを無効にします。ユーザーは引き続きSAMLを使用してサインインできます。
  • サブスクリプションでSAMLを設定し、セキュリティを強化するためにドメインに対してグローバルに要求します。

SAML SSOによるユーザーのPendoへの招待

IdPを使用して認証するには、Pendoサブスクリプションにユーザーを手動で追加する必要があります。Pendo管理者は、[設定(Settings)]>[ユーザー(Users)]に移動し、[+ 新規ユーザーの追加(+ New User)]を選択して、ユーザーを追加できます。

このメールアドレスは、IdPで使用されるメールアドレスと完全に一致する必要があります。大文字と小文字は区別されます。

サブスクリプションでSAMLが必要な場合には、[ユーザーを追加(Add User)]を選択してフォームを提出することで、ユーザープロファイルをPendoユーザーのリストに追加できます。このユーザーは自動的にIdPで認証されます。アクセスを許可するための招待メールを受け入れる必要はありません。

設定してもまだSAMLを要求していない(SAML SOOでユーザーにサインインを強制していない)場合、ユーザーは、設定を完了するためにパスワードを入力する必要があります。アカウントが正常に追加されると、パスワードページからSAMLでサインインするオプションが表示されます。

SSOを使ったサインイン

SAML SSOを使用するPendoユーザーは、いくつかの方法でPendoにログインできます。ユーザーは次のいずれかからPendoにアクセスできます。

  • IDプロバイダー。
  • SAMLの設定時に提供されるログインURL。
  • Pendoログインページ(SP起点)。

ユーザーが、SSOが利用可能だがSAMLが必須ではないメールアドレスを入力すると、Pendoのログインページに[SSO]ボタンが表示されます。このSSOボタンはIdPにリダイレクトするもので、必要に応じて認証を行います。SAMLが不要な場合は、メールアドレスとパスワードでログインすることもできます。

トラブルシューティング

エンティティIDがすでに使用されています

エンティティIDはIdP内全体で一意である必要があります。場合によっては、期待するエンティティIDを使用するように、別のベンダーがすでに設定されていることもあります。

Pendoサポートに連絡し、別のエンティティIDを取得してください。

ログインページの[SSO]ボタンが機能しません。

SAMLが必須に設定されるまで、ユーザーはパスワードページの[シングルサインオンを使用する(Use Single Sign-On)]ボタンを使用してサインインできます。[SSO]ボタンが機能しない場合は、サブスクリプションに対してSAMLがまだ完全に設定されていない可能性があります。

サブスクリプションがすでにSAML用に設定されている場合は、組織のSAML SSO管理者に連絡して、アクセス権が変更されていないことを確認してください。

サブスクリプションにSAMLが設定されており、ユーザープロファイルが有効であるにもかかわらずSSOボタンが使用できない場合は、Pendoサポートにお問い合わせください。

パスワードページに[SSO]ボタンが表示されません。

SAMLが設定されていても、Pendoに招待されていない場合、[SSO]ボタンは表示されません。SAMLはサブスクリプションで設定する必要があり、また、ユーザーIDとして使用するメールアドレスのドメインをPendoに伝える必要があります。

SAML設定でサインインにSAMLを要求しない場合、代わりにユーザーIDとパスワードを使用できる場合があります。

SAMLを必須とする場合は、パスワードページを経由せず、[SSO]ボタンを使用する必要がなくなります。通常、[SSO]ボタンは、SAMLが正しく設定されているかどうかをテストする場合にのみ表示されます。

サブスクリプションのドメインにSAMLの設定が必要な場合は、Pendoサポートにご連絡ください。

SAMLプロバイダーとしてGoogleを使用していますが、[Googleでサインイン(Sign In with Google)]ボタンが機能しません。

[Googleでサインイン]ボタンは、Googleの資格情報を使用してPendoにOAuthアクセスするためのものです。

OAuthはSAMLと同じではなく、相互に排他的です。Googleアプリケーションを使用してサインインするか(IdP起点)、メールアドレスを入力してGoogle SAMLログインページにリダイレクトされる必要があります。

[Googleでサインイン]ボタンを使用する場合は、Pendoサポートに連絡して、SAMLではなくGoogle OAuth SSOを要求するログイン方法への変更を依頼してください。

IdPを起点とするログインを使用すると、「権限がありません」というエラーページが表示されます

訪問者IDとして使用するメールアドレスのドメインはPendoに伝える必要があります。Pendoは、SAMLレスポンスでユーザーを認証するだけでなく、訪問者IDのドメインがそのサブスクリプションで許可されるドメインのリストにあることを確認しています。

IdPだけでなく、Pendoにもユーザーが追加されている必要があります。サブスクリプション管理者があなたをサブスクリプションに招待しており、ご自身が招待を受け入れていることを確認してください。

さらに、ユーザー名のアサーションで使用されるメールアドレスは、Pendoで定義されているものと一致する必要があります。アクセス権が変更されていないこと、名前がPendoで定義されているものと一致していることを、所属する組織のSAML SSO管理者に確認してください。

もう1つ考えられるのは、ユーザーがサインインしようとしているドメインがSAMLプロバイダと関連付けられておらず、サブスクリプションがSAMLを要求していることです。Pendoサポートに連絡して、サブスクリプションのSAML承認済みドメインにドメインを追加してください。

よくある質問

ドメインに複数のIdPを使用できますか?

いいえ。現在Pendoでは、1つのIdPでのドメイン管理のみが許可されています。Pendoには、IdPとドメインへの1対1の関連付けがあります。複数のドメインがある場合は、各ドメインに異なるIdPを設定して、そのドメインまたはサブドメインを管理できます。同じIdPを使用して、複数の検証済みドメインを管理することもできます。

ジャストインタイム(JIT)やクロスドメインID管理システム(SCIM)によるユーザーの自動プロビジョニングはサポートされますか?

JITやSCIMによるユーザー管理には対応していません。Pendo管理者は、ユーザーをサブスクリプションに手動で追加する必要があります。

ドメイン検証レコードの追加を求められるのはなぜですか?

IdPが管理するドメインを所有していることを検証するために、ドメインにDNS検証レコードを追加する必要があります。これは、制御の証明と呼ばれることもあります。DNS検証レコードは、サブスクリプションで使用するドメインおよびサブドメインそれぞれに追加する必要があります。

レコードの例:

example.com TXT "pendo-domain-verification=0d40b867-1518-4660-b155-58158f1c3e4c"

IdPのメタデータの入力を求められたら、何を提供すればよいですか?

IdPは、Pendoと共有できるプレーンテキストのXMLファイルを提供する必要があります。これは、SAMLを設定するためのサポートリクエストに含める必要があります。

OktaやAzureなどの一部のプロバイダーは、メタデータを指すパブリックURLを提供します。ファイルをダウンロードする代わりに、これを共有することができます。

SAMLを設定している場合、ユーザーがパスワードの追加を求められるのはなぜですか?

SAMLが設定されているが必須ではない場合、または別の理由でSAMLが必須に設定されていない場合でも、新しいユーザーの招待ではユーザーがパスワードを追加する必要があります。

ユーザーがIDの登録を完了すると、ログインページに[シングルサインオンを使用する]ボタンが表示されます。SAMLを要求するようにサブスクリプションを設定すると、これは不要になります。

SAML接続が利用できない場合、Pendoはバックドアメールアドレスを許可しますか?

許可しません。SAMLを必須にしているが接続に失敗する場合は、Pendoサポートに連絡して問題を修正するか、SAMLの要件を一時的に無効にしてメールアドレスとパスワードでログインできるようにしてください。

用語集

用語 説明
Assertion Consumer Service (ACS) URLまたはエンドポイント サービスプロバイダー(SP)ログインURLと呼ばれることもあり、SAMLレスポンスがポストされるSPが提供するエンドポイントです。SPはこの情報をIdPに提供する必要があります。
IDプロバイダー(IdP) エンドユーザーのアカウントを管理するサービスで、LDAPやActive Directoryなどのユーザーディレクトリに似ています。SAMLレスポンスをSPに送信することでエンドユーザーを認証します。IDプロバイダーには、Google、Azure、Oktaなどがあります。
IdPを基点とするSSO

IDプロバイダー(IdP)のボタンを使用してユーザーがサインインするログインフロー。これによりSAML認証が開始される。ユーザーは、ユーザーを識別するためのアサーションを含むSAMLメッセージとともに、サービスプロバイダー(SP)に転送されます。

セキュリティアサーションマークアップ言語(SAML) XMLベースの規格であり、IDプロバイダー(IdP)とサービスプロバイダー(SP)との間で認証や承認に関するデータを交換するために使用されます。SAML規格は、SSOソリューションに固有の問題を解決します。詳しくは、WikipediaのSAMLの記事をご覧ください。
セキュリティアサーションマークアップ言語(SAML)管理者 IdPのエンドユーザーのプロビジョニングとプロビジョニング解除、アプリの割り当て、パスワードのリセット、エンドユーザーのエクスペリエンス全般を担当します。SAML管理者はPendo管理者である必要はありません。
シングルサインオン(SSO) ユーザーはIdPに一度サインインするだけで、都度サインインすることなく複数のシステムにアクセスできるようになるシステム。ユーザーは一度のサインインで、ファイアウォールの内側とクラウドにあるすべてのウェブアプリケーションにアクセスできます。これにより、アクセス管理がSAML管理者に一元化されます。
サービスプロバイダー(SP) 通常、Pendoなどの一企業であり、通信、ストレージ、プロセシング、その他のサービスを組織に提供します。
SPを基点とするSSO

SAML認証がサービスプロバイダー(SP)(この場合はPendo)から開始されるログインフロー。これは、エンドユーザーがSP内のリソースにアクセスしようとしたとき、またはSPに直接サインインしようとしたとき(通常はログインページのSSOボタンを使用)にトリガーされます。

Subject/Name

IDプロバイダー(IdP)で認証されるユーザーのID。Pendoの場合、これはユーザーアカウントの登録とログインで使用されるメールアドレスです。