例: 複数のウェブサイト間でのシームレスな認証情報の共有

複数のウェブサイトでの認証情報の共有を設定するには:

  • プライマリ ドメインを指定します。リンクのプライマリ参照ポイントとして 1 つのドメインを選択します。
  • assetlinks.json ファイルを作成してホストする:
    • プライマリ ドメイン: 認証情報を共有するすべてのドメインをリストする assetlinks.json ファイルをプライマリ ドメインに作成してホストします。
    • その他のドメイン: 他の各ドメインに assetlinks.json ファイルを作成してホストし、それぞれをプライマリ ドメインにリンクします。

次の例では、example.com をプライマリ ドメインとして指定しています。リストに表示される他のすべてのドメインは、example.com と相互に認証情報を共有します。

認証情報の共有を設定する前に、前提条件を満たしていることを確認してください。

これらのウェブサイト間での認証情報の共有を宣言するには:

  1. 次の内容のプライマリ ドメインの assetlinks.json ファイルを作成します。

      [
        {
          "relation": ["delegate_permission/common.get_login_creds"],
          "target": {
            "namespace": "web",
            "site": "https://example.com"
          }
        },
        {
          "relation": ["delegate_permission/common.get_login_creds"],
          "target": {
            "namespace": "web",
            "site": "https://example.org"
          }
        },
        {
          "relation": ["delegate_permission/common.get_login_creds"],
          "target": {
            "namespace": "web",
            "site": "https://example.net"
          }
        },
        {
          "relation": ["delegate_permission/common.get_login_creds"],
          "target": {
            "namespace": "web",
            "site": "https://myownpersonaldomain.com"
          }
        }
      ]
    
  2. デジタル アセット リンクの JSON ファイルを、プライマリ URL の次の場所(https://example.com/.well-known/assetlinks.json)でホストします。

  3. メインドメインの assetlinks.json ファイルを参照する他のドメイン用に、簡素化された assetlinks.json ファイルを作成します。

      [
        {
          "relation": ["delegate_permission/common.get_login_creds"],
          "target": {
            "namespace": "web",
            "site": "https://example.com"
          }
        }
      ]
    
  4. この Digital Asset Links JSON ファイルのコピーを、他のすべてのドメインの次の場所でホストします(この例では次のようになります)。

    • example.org/.well-known/assetlinks.json
    • example.net/.well-known/assetlinks.json
    • mypersonaldomain.com/.well-known/assetlinks.json

以上の手順を完了すると、複数のウェブサイトでシームレスな認証情報共有が設定されます。リストに表示されるすべてのウェブサイトで認証情報を共有できるようになりました。

このアプローチにより、シームレスな認証情報共有ネットワークに新しいウェブサイトを追加するプロセスが簡素化されます。

認証情報共有ネットワークに新しいウェブサイトを追加する

認証情報共有ネットワークに新しいウェブサイトを追加するには:

  1. プライマリ ドメイン(この場合は https://example.com)でホストされている assetlinks.json ファイルを更新し、新しいドメインの URL を含む新しいステートメントをリストに追加します。

      ...
      {
        "relation": ["delegate_permission/common.get_login_creds"],
        "target": {
          "namespace": "web",
          "site": https://NEW_DOMAIN
        }
      }
      ...
    

    ここで、NEW_DOMAIN は新しいドメイン名です。

  2. 新しいドメインに assetlinks.json ファイルを作成してホストし、プライマリ ドメイン(この場合は https://example.com)にリンクします。次の内容を記述します。

      [
        {
          "relation": ["delegate_permission/common.get_login_creds"],
          "target": {
            "namespace": "web",
            "site": "https://example.com"
          }
        }
      ]
    

他のすべての assetlinks.json ファイルは変更されません。このアプローチにより、コードの再利用性が向上し、更新中にエラーが発生する可能性が低くなります。