すべてのプロダクト
Search
ドキュメントセンター

Dataphin:Dataphin とサードパーティ製 SSO システムの連携方法

最終更新日:Mar 05, 2026

背景情報

シングルサインオン (SSO) システムを Dataphin と連携できます。これにより、ユーザーは自社の SSO システム経由で Dataphin にログインできるようになります。連携を実現するには、SSO アプリケーションが Cookie にチケットを設定し、その Cookie のドメインが Dataphin システムと同一である必要があります。このプロセスにより、チケット認証、ログイン時のリダイレクト、ログアウト、およびアカウント情報の取得が可能になります。

説明
  • 新しいログインシステムへ切り替えた後、従来のログインポータルは無効化され、旧システムによるすべてのアカウントへのアクセスができなくなります。

  • 切り替え後は、SSO システムのみを使用してログインできます。新システムで、O&M 管理者 および スーパー管理者 のロールに対応するアカウントが提供されていることを確認してください。これらのアカウントは、Dataphin の日常的な O&M 業務に必要です。

  • ログイン時に、各旧アカウントと対応する新アカウント ID をマッピングする一覧を提供してください。

  • すべての旧アカウントを新ログインシステムに追加でき、ログインに使用できることを確認してください。たとえば、一部の外部アカウントは社内従業員システムと互換性がない場合があります。

以下の時系列グラフは、認証リクエストのフローを示しています。Cookie は Dataphin アプリケーションと同じドメインまたはルートドメイン上に配置する必要があります

image

必須機能

お客様の SSO システムは、以下の機能を提供する必要があります。

重要

これらの機能を構成した後は、Dataphin O&M エンジニア へご連絡ください。

API 仕様

リクエストメソッド:GET

コンテンツタイプ:Content-Type:application/json;charset=UTF-8

説明
  • 各 API について、リクエスト URI および応答フォーマットを記載しています。デフォルトのリクエスト URI が使用されますが、変更可能です

  • デフォルトの Cookie 名は `DPN_SSO_TICKET` であり、変更可能です。

  • 応答で `success: false` が返された場合、トラブルシューティングを支援するために、`message` フィールドに詳細な説明を提供してください。

1. チケット(Cookie)認証 API

説明:この API はチケット認証を提供します。デフォルトのリクエスト URI は /cookie/validCookie?ticket={ticket} です。

応答パラメーター

  • 正常終了時

    正常終了時は `true` が返されます。`data` オブジェクトにはユーザー詳細情報が含まれます。

    {
        "success":true,
        "data":{
            "userId":"1",
            "parentUserId":"0",
            "accountName":"account1",
            "displayName":"dataphin1",
            "realName":"Zhang 1",
            "nickName":"Zhang 1 Feng",
            "email":"1@alibaba.com",
            "mobilePhone":"12300000001"
        },
        "message":null
    }

    パラメーター

    説明

    必須

    一意性

    userId

    お客様のユーザー管理システムにおけるユーザー ID。

    はい

    はい

    accountName

    お客様のユーザー管理システムにおけるログインユーザー名。

    はい

    はい

    displayName

    Dataphin システムにおける表示名。Dataphin 内でのユーザー情報表示(検索機能を含む)に使用されます。検索やユーザーの特定を容易にするため、推奨フォーマットは username (userID) です。

    いいえ

    いいえ

    parentUserId

    親子関係を持つユーザー管理システムで使用されます。

    いいえ

    このパラメーターが空の場合、`accountName` がユーザー名として使用されます。

    いいえ(一意性を推奨)

    realName

    氏名。

    いいえ

    いいえ

    nickName

    ニックネーム。

    いいえ

    いいえ

    email

    メールアドレス。

    いいえ

    いいえ

    mobilePhone

    連絡先情報。

    いいえ

    いいえ

  • 失敗したリクエスト

    `false` を返します。この場合、`data` オブジェクトには認証リダイレクト URL (`redirectUrl`) が含まれます。

    {
        "success":false,
        "data":{
            "redirect":"http://127.0.0.1:8080"
        },
        "message":""
    }
    説明
    • `data.redirect` フィールドでは、カスタムのターゲット URL を返すことができます。この機能を利用するには、`isCustomizeTargetUrl` を有効化する必要があります。

    • デフォルトのターゲット URL は、現在アクセス中の Dataphin ページのアドレスです。

2. ターゲット URL リダイレクト付きログイン認証 API

http://127.0.0.1:8080?target-uri=http://dataphin.com

認証が期限切れになった場合、Dataphin は現在のページ URL をログイン認証 URL に追加します。これにより、ユーザーはログイン完了後に元のページへ戻ることができます。

3. ログアウト API

この API は、ユーザーをプラットフォームからログアウトさせます。`redirect` パラメーターはログアウト後のリダイレクト先アドレスです。

  • オプション 1:この API を呼び出して Cookie を無効化します。`redirect` フィールドには、お客様の認証ログインページのアドレスが返されます。Cookie を無効化できない場合は、リダイレクト URL を使用して Cookie をクリアしたうえで、指定されたページへ移動してください。

  • オプション 2:この API を呼び出します。`redirect` フィールドには、お客様のユーザー管理システムにおけるログアウト URL が返されます。Dataphin はこの URL へリダイレクトし、ログアウト処理を完了します。

デフォルトのリクエスト URI は /user/logout?ticket={ticket} です。応答フォーマットおよび定義は以下のとおりです。

{
    "success":true,
    "data":{
        "redirect":"http://127.0.0.1:8080"
    },
    "message":""
}

4. ユーザー詳細情報取得 API

この API はユーザー情報の同期に使用されます。将来的な拡張のために予約されており、現時点ではアプリケーションで使用されていません。

デフォルトのリクエスト URI は /user/getUser?userId={userId} です。応答フォーマットおよび定義は以下のとおりです。

{
    "success":true,
    "data":{
        "userId":"1",
        "parentUserId":"0",
        "accountName":"account1",
        "displayName":"dataphin1",
        "realName":"Zhang 1",
        "nickName":"Zhang 1 Feng",
        "email":"1@alibaba.com",
        "mobilePhone":"12300000001"
    },
    "message":null
}

5. ユーザー詳細情報一覧取得 API

この API はユーザー情報の同期に使用され、実装が必須です。

  • 完全同期

    デフォルトのリクエスト URI は /user/getAllUser です。応答フォーマットおよび定義は以下のとおりです。

    {
        "success":true,
        "data":[
            {
                "userId":"1",
                "parentUserId":"0",
                "accountName":"account1",
                "displayName":"dataphin1",
                "realName":"Zhang 1",
                "nickName":"Zhang 1 Feng",
                "email":"1@alibaba.com",
                "mobilePhone":"12300000001"
            },
            {
                "userId":"2",
                "parentUserId":"0",
                "accountName":"account2",
                "displayName":"dataphin2",
                "realName":"Zhang 2",
                "nickName":"Zhang 2 Feng",
                "email":"2@alibaba.com",
                "mobilePhone":"12300000002"
            }
        ],
        "message":null
    }
  • ページネーション

    デフォルトのリクエスト URI は /user/getAllUser?pageNo={page_number}&pageSize={items_per_page} です。応答フォーマットは完全同期と同一です。`data` リストが空になった時点で処理を終了します。

6. ログイン構成およびアカウントマッピング

開発完了後、新しいログインシステムへの切り替えに必要なログイン構成およびアカウントマッピング情報を提供してください。

  • ログイン構成

    # 以下はデフォルト値です。変更を行った場合は適宜修正してください。
    dataphin.thirdpart.sso.endpoint=http://127.0.0.1:8080
    dataphin.thirdpart.sso.cookie.name=DPN_SSO_TICKET
    dataphin.thirdpart.sso.cookie.validUrl=/cookie/validCookie?ticket={ticket}
    dataphin.thirdpart.sso.user.logoutUrl=/user/logout?ticket={ticket}
    dataphin.thirdpart.sso.user.getUserUrl=/user/getUser?userId={userId}
    dataphin.thirdpart.sso.user.getAllUserUrl=/user/getAllUser
    dataphin.thirdpart.sso.isCustomizeTargetUrl=false
  • アカウントマッピング

    旧アカウントのユーザー ID または Dataphin ユーザー ID

    新ログインシステムのユーザー ID

    例:SuperAdmin または 30000001

    12345678

    例:SuperAdmin または 30000002

    87654321

連携後の検証

  1. ログイン機能の検証:お客様の SSO システム経由で Dataphin にログインできること、およびユーザー情報が正しく表示されることを確認してください。

  2. ユーザー同期の検証

    Dataphin Management Hubメンバー管理 へ移動し、アカウントシステムの同期 をクリックします。エラーが発生せず、メンバーの追加 をクリックした際に同期されたユーザーが表示される場合、同期は成功しています。

  3. ログアウト機能の検証

    Dataphin で右上隅のプロフィール画像をクリックし、ログアウト をクリックします。指定したページへリダイレクトされ、Cookie が所定通りクリアされることを確認してください。

重要

SuperOps/スーパー管理者アカウントをログインシステム上の別のアカウントへ切り替える場合は、Dataphin O&M エンジニア へご連絡ください。