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

DataCamp Enterprise向けシングルサインオン(SSO):概要

🤖 注意:英語以外の言語の記事はAIの助けを借りて翻訳されています。正確性を目指していますが、表現に若干の違いがある場合があります。改善点に気づかれた場合は、ご意見をお寄せください。

シングルサインオンとは?

シングルサインオン(SSO)は、ユーザーが一組のログイン資格情報で複数のアプリケーションやサービスにアクセスできる認証方式です。

DataCampのEnterprise SSO統合により、顧客はDataCampの既存のログインやアカウント作成フローの外部で組織のメンバーを管理できます。

SSOの主な利点は以下の通りです:

  • セキュリティの向上とフィッシングの最小化

  • より簡単なオンボーディングとメンバー管理プロセス

  • 組織のメンバーはDataCampにアクセスするために別のログイン資格情報を必要としない

  • 優れたユーザー体験:ユーザーはシームレスにアカウントがプロビジョニングされ、一度の操作でDataCampのコンテンツにリダイレクトされる

前提条件

SSOを設定するには、DataCamp Enterpriseプランを契約し、組織の管理者である必要があります。DataCamp Enterpriseプランへのアップグレードに関する機能や料金情報はこちらをご覧ください。

現時点でDataCampはSAML 2.0統合のみをサポートしています。SSOを設定するには、SAMLアイデンティティプロバイダー(IdP)が設定されている必要があります。IdPはユーザーおよび組織アカウントを含むディレクトリまたはデータベースです。

シングルサインオンの設定

必要な設定

DataCampにサインインし、Enterprise組織に移動してから、設定 > SSO > SAML 2.0を許可を選択します。

統合を完了するには、組織固有の以下の情報を入力する必要があります:

  • エンティティID/発行者URL:これはIdPから提供され、組織のドメインを一意に識別します。

  • ログインURL/SSOエンドポイント:DataCampがユーザーログインをIdPにリクエストするために呼び出すURLです。

  • IdP証明書:IdPから発行された認証証明書です。

SAML属性

これに加え、重要なユーザー情報のためにSAML属性名を整合させることが重要です。DataCampは以下のクレームを受け入れます:名、姓およびメールアドレス。

この3つのうち、メールアドレスは統合が正しく機能するために必須です。名と姓は任意ですが、最良のユーザー体験のために提供が推奨されます。

これら3つのフィールドに対して、以下の属性名リストを受け入れます:

メールアドレス

名:

姓:

これらの属性のいずれかを送信しない場合、DataCamp内の対応する値は更新されません。つまり:

  • 新規ユーザーは名/姓が設定されません;

  • SSOが有効になる前に作成されたユーザーは、それ以前に設定された名/姓を保持します。

ただし、属性に空の値を提供すると、DataCamp内の対応する値は更新されます。そのため、SSO有効化前に名/姓があったユーザーは、SSOを通じて初回ログイン後に空の名/姓になります。

DataCampとIdPの両方に正しい情報を入力したら、最後に「SSOを有効にする」を選択すれば設定完了です。これで組織のSSOが有効になります。

任意の設定

NameIDフォーマット

DataCampはNameIDフォーマットの設定に以下の2つのオプションをサポートしています:

  • nameid-format:emailAddress(デフォルト)

  • nameid-format:unspecified

DataCampにメールアドレスの代わりに社内の社員IDを一意識別子として使用させたい場合は、IdPでNameIDフォーマットを"urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified"に設定し、"unspecified"の値を社員IDにしてください。その後、DataCampのSSO設定で"unspecified"を選択します。プラットフォームの要件として"emailAddress"属性は引き続き送信する必要があります。任意ですが、FirstNameとLastNameもSAML属性として送信することを強く推奨します。これにより、DataCamp上の学習者のフルネームが正しく入力されます。

IdPが"unspecified"値の送信を設定し、DataCampのSSO設定でこの設定を行うと、ユーザーがログインするたびに社員IDを保存し始めます。すでに組織にメンバーがいる場合は、次回ログイン時まで社員IDは取得されません。

特定のLMSやLXP統合では社員IDが必須となる場合があります。この場合、SSO設定で社員IDをunspecified NameIDフォーマットとして送信・保存する必要があります。何らかの理由で社員IDがない場合(例:設定変更後にユーザーが未ログイン)、コンテンツ完了情報を送信できません。ログインして社員IDが保存されるまで待つ必要があります。

SSO設定タブ内で最新の同期されたNameIDマッピングを確認できます。マッピングを受信し始めると、以下のように最新のマッピングが表示されます:

NameIDマッピングの受信設定済み。最近受信したマッピング:

左側の値は社員ID(例:10101010)、右側の値はメールアドレスです。

マッピングが正しくない場合は、サポートチームにご連絡いただきリセットを依頼してください。

ジャストインタイム(JIT)プロビジョニング

JITプロビジョニングが有効な場合、DataCampはSSO(IdPまたはLMS経由)で新規メンバーがサインインすると自動的にアカウントを作成しライセンスを割り当てます。無効の場合は、新規メンバーは待機リストに追加され、管理者の承認後にライセンスが割り当てられます。

e0268e51-bb81-4c82-8fd9-7bc67702ceaa.png

「JITプロビジョニングを有効にする」オプション

組織内の特定の対象者にのみDataCampを提供したい場合は、JITプロビジョニングを無効にし、代わりに招待リンクなど他のユーザー招待方法を利用することを推奨します。JITは、IdPでユーザーに明示的にアクセス権を付与するか、カスタムSSOディープリンクを作成・共有しない限り発動しません(詳細は以下を参照)。

SSOログインの強制

SSOが必須の場合、すべてのメンバーと管理者はIdP経由でログインする必要があります。SSOが任意の場合は、メンバーと管理者はIdPかDataCampアカウントのメールとパスワードでログインできます。

SSO統合開始時に組織に既にメンバーがいる場合、またはSSOが必須に変更された場合、該当メンバーは即座にDataCampからログアウトされ、SSOを通じて再認証を求められます。

複数の理由からSSOの強制を強く推奨します。主な利点は、ユーザーが自動的にSSOで認証するよう誘導され、代替認証方法の選択肢がなくなることです。

注意:SSOの強制は推奨しますが、必須にする前にSSO設定が正しく機能していることを必ず確認してください。万が一に備え、確実に動作するまでは設定を任意のままにしておくことを推奨します。現在、組織管理者がシステムにログインする代替方法はなく、全員が同じ流れを通る必要があります。

2ba73782-2f94-4e4d-8441-9031c5fc0a95.png

SSOの有効化と無効化

SSO設定が完了したら、SSOを有効にする準備が整います。フォーム下部の「SSOを有効にする」をクリックしてください。

SSOが有効になると、ユーザーには組織でSSOが有効化されたことを知らせるメールが届き、SSO資格情報で再度サインインする必要がある旨が通知されます。

メール内のリンクをクリックするとDataCampのサインインページにリダイレクトされます。ここでメールアドレスを入力して「次へ」を押すと、そのメールアドレスがSSO有効なグループに属するメンバーであれば、IdPログインページにリダイレクトされます。そこでSSO資格情報でサインインすると、正常に認証されDataCampに戻り、プラットフォームにアクセスできます。

image2022-12-21_14-19-2.png

組織がSSOを有効化・無効化した際にユーザーに送信されるメール

同様に、メンバーが組織から削除された場合や組織内でSSOが無効化された場合、パスワードリセットを促すメールが送信され、SSOなしでログインできるようになります。

特定のアイデンティティプロバイダー向け追加ドキュメント

以下のIdPとの統合を設定したい場合は、こちらのヘルプドキュメントをご覧ください:

MicrosoftのAzure Galleryにもアプリケーションとして登録されています。

SSOが有効かつ必須の場合の組織へのメンバー招待(管理者向け)

前述の通り、SSOの強制を複数の理由から強く推奨します。主な利点は、ユーザーが自動的にSSOで認証され、代替認証方法を選択する必要がなくなることです。ただし、SSOが適さない場合や利用できない場合に備え、代替認証方法の利用オプションについてもドキュメントで説明します。

  • SSOが有効で必須に設定されていない場合、標準の招待方法は引き続きSSOを介さずに機能します。

  • SSOが必須に設定されている場合、すべての招待フローでユーザーは招待を受け入れる際にSSO資格情報でサインインする必要があります。

注意:セキュリティ上の理由から、招待前にDataCampに既存アカウントがあるユーザーは、以下のいずれかの方法で招待する必要があります。両方の方法には、プラットフォーム上のユーザーとIdP上のユーザーが同一であることを確認する追加の検証ステップがあります。

メール招待

メールアドレスを指定して特定のメンバーを招待できます。この方法の利点は、招待時に権限(例:管理者権限)をカスタマイズできることです。

注意:招待しようとしているユーザーがすでにDataCampにアカウントを持っている場合、そのユーザーのプラットフォーム上の既存メールアドレスで招待する必要があります。そうしないと学習進捗が引き継がれません。

image2022-12-21_15-11-11.png

招待リンク

標準の招待リンクを生成し、この方法で参加したメンバーを特定のチームに自動追加するようリンクをカスタマイズできます。

この招待方法の他の利点:

  • 特定のメールドメインに招待を限定可能。ドメインは招待リンク作成時に追加できます。

  • リンクを知っている学習者のみがサインアップ可能。複数の学習者にリンクを共有するだけで個別招待が不要になります。

image2022-12-21_15-9-54.png

カスタムSSOディープリンク

SSOディープリンクは、DataCamp内の特定ページへのリンクで、企業のSSO識別子を含みます。ユーザーがこのリンクをクリックすると、未ログインの場合は自動的にIdPにリダイレクトされSSOでサインインし、元のページに戻ります。ジャストインタイムプロビジョニングが有効でまだDataCampアカウントがない場合は、自動的に新規アカウントがプロビジョニングされます。

SSOディープリンクの形式は以下の通りです: https://www.datacamp.com/groups/<GROUP_IDENTIFIER>/sso/saml/login?path=<PATH>

<PATH>の例は「/home」で、当社ホームページへのリンクです。特定のコースやトラックページへもSSOディープリンクを誘導できます。

ジャストインタイムプロビジョニングが有効な場合、この招待方法でDataCampの新規アカウントを作成できます。すでに組織に追加済みのアカウントへのサインインにも常に使用可能です。既存アカウントで組織に未所属の場合、ログイン時に自動的にメンバーとして追加されます。

IdPからのリンク

IdPの設定によっては、メンバーはIdPのディレクトリ内でDataCampアプリケーションを選択して直接組織に登録できます。

ジャストインタイムプロビジョニングが有効な場合、この招待方法でDataCampの新規アカウントを作成できます。すでに組織に追加済みのアカウントへのサインインにも常に使用可能です。既存アカウントで組織に未所属の場合、ログイン時に自動的にメンバーとして追加されます。

注:Degreedなど一部のIdPはIdP発行ログインをサポートしていません。

LMSまたはLXPからのリンク

既存のLMSまたはLXP統合を利用している場合、SSOを組み合わせてIdPから直接SSO経由でDataCampにシームレスにアクセスすることも可能です。詳細はこちらのLMSおよびLXPドキュメントをご覧ください。

この招待方法は、ジャストインタイムプロビジョニングが有効な場合にDataCampの新規アカウントを作成するか、すでに組織に追加済みのアカウントにサインインするために使用できます。既存アカウントで組織に未所属の場合、ログイン時に自動的にメンバーとして追加されます。

組織でSSOが有効かつ必須になった後のDataCampへのアクセス(メンバー&管理者)

管理者からSSOが有効かつ必須の場合に組織へ招待される方法はいくつかあります。

メール招待

管理者はメールでDataCamp組織への参加を招待することがあります。

注意:別のメールアドレスで既存のDataCampアカウントを持っていて、グループ内でのコース進捗を反映させたい場合は、招待を受け入れる前にプロフィールでメールアドレスを更新し、管理者に再招待を依頼してください(管理者のメールアドレスは招待メールに含まれます)。そうしないと別アカウントが作成されます。

招待を受け入れる準備ができたら、メールまたは既にアカウントがある場合はアプリ内通知で「グループに参加」を選択してください。IdPにリダイレクトされ、SSO資格情報でサインインします。認証が成功するとDataCampに戻り、組織にアクセスできます。

注意:SSOが任意の場合は、サインアップフォームにリダイレクトされます。任意なのでIdPを経由する必要はありません!

招待リンク

SSOが有効かつ必須の場合、招待リンクをクリックしたメンバーは自動的にIdPにリダイレクトされ、SSO資格情報でサインインします。

認証成功後:

  • IdPから返されたメールアドレスでDataCampアカウントが既に存在する場合、メンバーに既存アカウントの所有権を確認するためにログインを求めます(通常は既存アカウントのパスワードを使用)。所有権が確認されるとグループに参加します。

  • 該当メールアドレスのDataCampアカウントが存在しない場合は、新規アカウントが作成され、招待リンクを受け入れてグループに参加します。

IdP、LMS、LXP、またはカスタムSSOディープリンクからのアクセス

メンバーはIdPにログインし、DataCampアプリケーションを選択して組織に参加できます。同様に、管理者が設定していればLMSまたはLXPシステム経由やカスタムSSOディープリンク経由で組織に参加可能です。ジャストインタイムプロビジョニングが有効でまだDataCampアカウントがない場合、この招待方法でアカウントが作成されます。

注意:セキュリティ上の理由から、既存のDataCampアカウントを持ち組織に未所属のユーザーは、管理者が上記の代替招待方法で招待する必要があります。

DataCamp招待リンクで参加を試みた際に組織のライセンスが不足している場合、待機リストに追加されます。管理者に通知され、承認されると組織に追加され、確認メールが届きます。

招待受諾後のサインイン

DataCampアカウントを作成し組織に登録されたら、複数の方法でSSOを使ってDataCampにログインできます。

サインインページ

通常のサインインページにアクセスできます:https://www.datacamp.com/users/sign_in。

メールアドレスを入力してください(SSO資格情報に紐づくメールアドレスと同じである必要があります)。組織のメンバーであれば、SSOログインが必要と検出され、IdPにリダイレクトされます。認証後、DataCampに戻り学習を続けられます。

組織でSSOが有効だが必須でない場合は、「SSOを使用」ボタンをクリックしてSSOログインするか、DataCampのメールとパスワードでログインできます。

image2022-12-21_15-55-9.png

組織でSSOが任意の場合に「SSOを使用」ボタンが表示されます

IdP、LMS、LXP、またはカスタムSSOディープリンクからのアクセス

メンバーはIdPにログインし、DataCampアプリケーションを選択してログインできます。同様に、管理者が設定していればLMSやLXPシステム経由やカスタムSSOディープリンク経由でもログイン可能です。すでにDataCampアカウントがありグループのメンバーであれば、ワンクリックでサインインできます。

LMS識別子

LMS統合を利用している顧客向けに、メールやNameIDとは異なるLMS識別子でユーザーを識別するオプションを提供しています。これは、メンバーがメール、NameID、LMS IDの3つの識別子を別々に持っている場合に便利です。

この機能をサポートするため、以下の名前のいずれかでSAML応答内にLMS識別子を含めることを受け入れます:

  • lms_username

  • http://schemas.xmlsoap.org/ws/2005/05/identity/claims/lms_username

これが送信されると記録され、DataCampのLMS統合でユーザー識別子として使用されます。すなわち、ユーザー完了イベントのユーザー識別子に含まれます。

SAML属性を使ったチームへのユーザー追加

DataCampグループのチームにユーザーを自動追加する機能を、dc_groups SAML属性でサポートしています。この機能を利用するには、IdPでdc_groups属性を設定し、1つ以上のチーム名(文字列)を値として含めてください。

複数チームの場合はマルチバリュー属性として提供します。例:

<saml:Attribute Name="dc_groups"
NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic">
    <saml:AttributeValue xsi:type="xs:string">Engineering</saml:AttributeValue>
    <saml:AttributeValue xsi:type="xs:string">Marketing</saml:AttributeValue>
    <saml:AttributeValue xsi:type="xs:string">Sales</saml:AttributeValue>
</saml:Attribute>

単一チームの場合はシングルバリュー属性で提供可能。例:

<saml:Attribute Name="dc_groups" 
NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic">
  <saml:AttributeValue xsi:type="xs:string">Engineering</saml:AttributeValue>
</saml:Attribute>

ユーザーを既存のチームに追加するには、提供されたチーム名がDataCampで設定されているチーム名と完全に一致している必要があります(大文字小文字は区別しません)。指定されたチームが存在しない場合は、新しいチームを自動作成しユーザーを追加します。

重要な注意点(1): この機能は現在追加のみです。つまり、ユーザーをチームから削除することはありません。ユーザーが複数チームに所属している場合、dc_groupsの値を空にするか省略しても、ユーザーはチームから削除されません。

重要な注意点(2): 現状、SSOフローで待機リストに入るかアカウント所有権確認を行う場合、ユーザーはチームに追加されません。これは当社側の制限によるものです。

メールドメインのホワイトリスト登録

メールドメインのホワイトリスト登録により、組織は1つ以上のメールドメイン(例:yourcompany.com)を所有権主張し、該当ドメインのメールアドレスを持つユーザーをサインイン・サインアップ時に自動的にSSOのIdPにリダイレクトできます。

ドメインがホワイトリストに登録されると:

  • サインインフロー:DataCampアカウントを持たないユーザーがDataCampのサインインページでメールアドレスを入力すると、メールドメインをチェックします。ホワイトリストに一致する場合、サインインページをスキップして組織のIdPに自動リダイレクトされます。IdPで認証成功後、新規アカウントが作成されDataCampに戻ります。ジャストインタイムプロビジョニングが有効なら、組織のグループにも自動追加されます。
    これにより、直接DataCampにサインインしようとする新規ユーザーのオンボーディングがスムーズになります。
    ​注:すでにDataCampアカウントを持つユーザーは通常のログインフローが適用されます。

  • サインアップフロー:ホワイトリストドメインで新規ユーザーがサインアップすると、組織がすでにDataCampサブスクリプションを持つことが通知され、組織のIdPで認証するようリダイレクトされます。
    これにより、SSOで本人確認後に新規ユーザーが適切に組織のDataCampグループとサブスクリプションに紐づきます。

メールドメインのホワイトリスト登録を開始するには、カスタマーサクセスマネージャーまたはDataCampサポートにお問い合わせください。登録プロセスの一環として、組織が対象ドメインを管理していることを確認します。

よくある質問(FAQ)

既存のメンバーがいる状態でSSOを有効にするとどうなりますか?

SSOを有効にすると、既存のメンバーにIdP資格情報でログインするよう促すメールが届きます。以後、メンバーはSSOが有効な組織に所属している間はIdP資格情報でログインする必要があります。

SSOで作成されたアカウントが組織の購入済みライセンス数を超えた場合は?

メンバーは待機リストに追加され、管理者全員にメールが送信されます。管理者の承認後、ライセンスが追加されユーザーはDataCampを利用できるようになります。

DataCampはIdP発行型とサービスプロバイダ発行型の両方のSSOをサポートしていますか?

DataCampはIdP発行型とSP(サービスプロバイダ)発行型の両方のSSOをサポートしています。

モバイルでSSOはサポートされていますか?

はい、モバイルアプリでもSSOはサポートされています。

SSOでモバイルアクセスをブロックできますか?

DataCamp側にモバイルアクセスをSSOでブロックする設定はありません。ただし、過去にクライアント側のIdP設定でモバイルアクセスをブロックした例があります。

メンバーがDataCamp組織から削除された場合は?

組織のメンバーがDataCampのメンバーから削除されると、ログイン情報の再作成を促すメールが送信されます。メールアドレス確認と新しいパスワード作成も求められ、組織やプレミアムコンテンツへのアクセス権はなくなります。

メンバーがIdP(アイデンティティプロバイダー)から削除された場合は?

IdPからメンバーを削除しIdPログイン資格情報を無効化すると、そのメンバーはDataCampにログインできなくなります。ただし、DataCamp組織のメンバーリストから自動で削除されるわけではありません。メンバーリストページで手動削除が必要です。削除支援が必要な場合はサポートチームにご連絡ください。

メンバーのメールアドレスが変更された場合は?

当社はNameIDフォーマットを基にユーザーを一意に識別しています。

NameIDフォーマットがemailの場合、メールアドレス変更は新しいユーザーIDの作成となり、元のアカウントへのアクセスが失われます。

NameIDフォーマットがunspecifiedの場合、メールアドレスの変更は問題なく、NameIDでユーザーをマッチングできれば自動的に更新されます。ただし、新しいメールアドレスが別のアカウントに既に紐づいている場合は更新されません。

DataCampはCA署名証明書を提供していますか?

すべての証明書はデフォルトで自己署名証明書です。CA署名証明書が必要な場合はサポートチームにお問い合わせください。

DataCampアプリケーションへのアクセス権がないというログインエラーが出た場合は?

以下のようなDataCampリンクが機能しないエラーが表示された場合:

あるいはAzure ADのようなより詳細なエラー:

2.png

これらのエラーはIdP側で発生しています。管理者に連絡しDataCampアプリケーションへのアクセス権を付与してもらう必要があります。DataCamp側で修正できるものではありません。

なぜIdPに2つのACS(Assertion Consumer Service)URLを設定する必要があるのですか?

DataCampはSP発行とIdP発行の両方のログインフローを完全にサポートするため、2つのACS URLを要求しています。両方のURLを設定することで、ユーザーがDataCampのサインインページからログインを開始しても、IdPから直接ログインを開始しても認証が正しく機能します。

DataCampグループのSSO証明書を更新するには?

SSO証明書を更新する際(例:有効期限切れの場合)、DataCampとIdPの両方で同時に更新を行い、ログイン障害を防ぐことが重要です。

選択肢は2つあります:

  • セルフサービス - DataCampのグループSSO設定にアクセスできる場合は、以下の手順で新しい証明書をアップロードできます:

    • グループのSSO設定ページに移動(例:https://app.datacamp.com/groups/[your-group-name]/settings/sso)

    • IdP証明書欄に新しい証明書を貼り付ける

    • 設定を更新ボタンをクリックして保存する
      ⚠️ 重要:同時にIdP側も新しい証明書に切り替えてください。両者が同時に切り替わらないと認証失敗が発生します。

  • DataCampと調整 - サポートまたは担当者にメールで連絡し、ダウンタイムなしで切り替えを実施するための共同作業を手配します。

なぜユーザーにアカウント所有権の確認を求めるのですか?

ユーザーがDataCampグループのSSOでサインインしようとした際、そのメールアドレスで既にDataCampアカウントが存在する場合、既存アカウントの所有者であることを証明しない限りグループに追加できません。これをアカウント所有権確認フローと呼びます。

confirm_account_ownership.png

このフローでは、標準のサインインフォームにリダイレクトされ、パスワードやGoogleなどのソーシャルログインで所有権を証明する必要があります。グループのSSOでのログインでは所有権を証明できません。既存DataCampアカウントで利用可能な認証方法でログインしてください。

所有権が証明されるとグループに追加され、以降はグループのSSOで認証できます。

こちらの回答で解決しましたか?