Menyiapkan berbagi kredensial yang lancar di seluruh aplikasi dan situs Android

Maksimalkan kenyamanan pengguna dengan mengaktifkan berbagi kredensial lintas platform yang lancar di seluruh aplikasi dan situs Anda. Jika beberapa situs dan aplikasi Android berbagi backend pengelolaan akun, fitur ini memungkinkan pengguna menyimpan kredensial sekali dan menyarankannya secara otomatis di situs atau aplikasi Android tertaut.

Ada dua metode yang didukung untuk menyiapkan pembagian kredensial:

  • Konsol Play: Direkomendasikan untuk sebagian besar developer saat menyiapkan berbagi kredensial dengan aplikasi Android. Metode ini memungkinkan Anda mengonfigurasi berbagi kredensial tanpa perlu merilis versi baru aplikasi. Perhatikan bahwa meskipun menggunakan Konsol Play, Anda tetap perlu memublikasikan file assetlinks.json yang valid di situs Anda.
  • Digital Asset Links (DAL): Cocok untuk kasus penggunaan lanjutan, seperti mendukung beberapa aplikasi atau domain dengan konfigurasi yang lebih kompleks.

Praktik terbaik

Untuk pengalaman pengguna dan keamanan yang optimal, terapkan berbagi kredensial yang lancar di seluruh poin kontak ini:

  • Formulir login: Mengaktifkan pengisian kredensial otomatis.
  • Formulir pendaftaran: Menyimpan kredensial baru dengan aman untuk digunakan di seluruh platform.
  • Formulir perubahan sandi: Menyinkronkan pembaruan sandi di semua platform.
  • Formulir reset sandi: Mengizinkan reset sandi tunggal untuk memperbarui semua platform.
  • Domain webview: Memperluas berbagi kredensial ke domain webview dalam aplikasi Anda yang menangani pengelolaan akun (formulir login, pendaftaran, perubahan sandi, atau reset sandi host).
  • Aplikasi Android

Pendekatan ini menciptakan sistem pengelolaan kredensial terpadu, yang meningkatkan kemudahan dan keamanan pengguna.

Saat mendesain situs pengelolaan akun, sebaiknya ikuti praktik terbaik berikut untuk situs pengelolaan akun:

Saat mendesain aplikasi Android, sebaiknya integrasikan aplikasi Anda dengan Pengelola Kredensial Android.

Menyiapkan berbagi kredensial menggunakan Konsol Play

Sekarang Anda dapat mengaktifkan berbagi kredensial tanpa hambatan langsung dari Konsol Play tanpa memublikasikan versi baru aplikasi Android Anda. Metode ini menyederhanakan proses dengan mengelola konfigurasi berbagi kredensial melalui antarmuka Konsol Play.

Prasyarat

Sebelum menyiapkan berbagi kredensial menggunakan Konsol Play, pastikan Anda memiliki:

  • Izin Konsol Play yang diperlukan untuk mengakses bagian Deep link dan Konfigurasi aplikasi. Jika Anda bukan pemilik akun, minta administrator Konsol Play untuk memberi Anda akses yang sesuai.
  • Kemampuan untuk memublikasikan file /.well-known/assetlinks.json di setiap domain masing-masing, dengan mengikuti sintaksis Digital Asset Links (DAL).

Mengaktifkan berbagi kredensial untuk domain baru

Untuk menyiapkan berbagi kredensial tanpa hambatan di Konsol Play untuk domain baru, ikuti langkah-langkah berikut:

  1. Buka Konsol Play, lalu buka halaman Deep link (Mendorong pertumbuhan pengguna > Deep link).
  2. Di bagian tab App configuration, klik Add domain.
  3. Masukkan domain situs Anda.
  4. Aktifkan tombol Aktifkan berbagi kredensial.
  5. Salin file JSON yang dihasilkan dan publikasikan di lokasi yang ditentukan (https://YOUR_DOMAIN/.well-known/assetlinks.json sesuai dengan protokol), atau tambahkan informasi yang relevan ke file assetlinks.json yang ada.
  6. Klik Buat objek atribusi situs.

Jika berhasil, Anda akan kembali ke halaman Deep link.

Mengaktifkan berbagi kredensial untuk domain yang ada

Untuk menyiapkan berbagi kredensial tanpa hambatan di Konsol Play untuk domain yang ada, ikuti langkah-langkah berikut:

  1. Pilih tab App configuration.
  2. Di bagian Domain, pada bagian Konfigurasi aplikasi, klik Aktifkan di kolom Berbagi kredensial.
  3. Salin file JSON yang dihasilkan dan publikasikan di lokasi yang ditentukan (atau tambahkan informasi yang relevan ke file assetlinks.json yang ada).
  4. Klik Aktifkan berbagi kredensial.

Jika berhasil, Anda akan kembali ke halaman Deep link.

Menyiapkan berbagi kredensial hanya menggunakan Digital Asset Links (DAL)

Untuk penyiapan kompleks yang melibatkan beberapa aplikasi atau situs, gunakan Digital Asset Links (DAL) untuk mengonfigurasi berbagi kredensial secara manual.

Prasyarat

Sebelum menyiapkan berbagi kredensial tanpa hambatan, pastikan Anda memiliki hal berikut untuk setiap platform:

Untuk setiap aplikasi Android:

Untuk setiap situs:

  • Kemampuan untuk memublikasikan file /.well-known/assetlinks.json di setiap domain, dengan mengikuti sintaksis Digital Asset Links (DAL).
  • Semua domain pengelolaan akun (formulir login, pendaftaran, perubahan sandi, atau reset sandi) harus dapat diakses melalui HTTPS.

Mengaktifkan berbagi kredensial dengan lancar di seluruh aplikasi dan situs Android

Untuk mengonfigurasi berbagi kredensial tanpa hambatan di seluruh aplikasi dan situs, Anda membuat dan memublikasikan daftar pernyataan Digital Asset Links yang mendeklarasikan entitas (situs atau aplikasi Android) yang diizinkan untuk berbagi kredensial.

Untuk mendeklarasikan hubungan berbagi kredensial:

  1. Buat file assetlinks.json dengan pernyataan yang ditautkan ke situs dan ke aplikasi Android, dengan mengikuti sintaksis daftar pernyataan DAL:

    [
      {
        "relation":[
          "delegate_permission/common.get_login_creds"
        ],
        "target":{
          "namespace":"web",
          "site":URL
        }
      },
      {
        "relation":[
          "delegate_permission/common.get_login_creds"
        ],
        "target":{
          "namespace":"android_app",
          "package_name":"APP_ID",
          "sha256_cert_fingerprints":[
            "SHA_HEX_VALUE"
          ]
        }
      }
    ]
    

    Dengan URL adalah URL situs Anda, APP_ID adalah ID aplikasi Android, dan SHA_HEX_VALUE adalah sidik jari SHA256 dari sertifikat penandatanganan aplikasi Android Anda.

    Kolom relation menjelaskan hubungan yang dideklarasikan. Untuk mendeklarasikan bahwa aplikasi dan situs berbagi kredensial login, tentukan hubungan sebagai delegate_permission/common.get_login_creds. Pelajari lebih lanjut String Relasi di DAL.

    Kolom target adalah objek yang menentukan aset tempat deklarasi berlaku.

    Kolom berikut mengidentifikasi situs:

    namespace

    web

    site

    URL situs, dalam format https://domain[:optional_port]; misalnya, https://www.example.com.

    domain harus sepenuhnya memenuhi syarat, dan optional_port harus dihilangkan saat menggunakan port 443 untuk HTTPS.

    Target site hanya dapat berupa domain root: Anda tidak dapat membatasi pengaitan aplikasi ke subdirektori tertentu. Jangan sertakan jalur dalam URL, seperti garis miring.

    Subdomain tidak dianggap cocok: yaitu, jika Anda menentukan domain sebagai www.example.com, domain www.counter.example.com tidak akan dikaitkan dengan aplikasi Anda.

    Kolom berikut mengidentifikasi aplikasi Android:

    namespace

    android_app

    package_name

    Nama paket yang dideklarasikan dalam manifes aplikasi. Misalnya, com.example.android

    sha256_cert_fingerprints

    Sidik jari SHA256 dari sertifikat penandatanganan aplikasi Anda.

  2. Menghosting file JSON Digital Asset Links di lokasi berikut pada domain login: https://DOMAIN[:OPTIONAL_PORT]/.well-known/assetlinks.json , dengan DOMAIN sepenuhnya memenuhi syarat, dan OPTIONAL_PORT harus dihilangkan saat menggunakan port 443 untuk HTTPS.

  3. Deklarasikan pengaitan di aplikasi Android dengan menyematkan pernyataan dalam file res/values/strings.xml aplikasi Android yang ditautkan ke daftar pernyataan yang Anda buat di Langkah 1. Tambahkan objek yang menentukan file assetlinks.json untuk dimuat. Contoh:

      <string name="asset_statements" translatable="false">
    [{
      \"include\": \"https://DOMAIN[:OPTIONAL_PORT]/.well-known/assetlinks.json\"
    }]
    </string>
    

    Ganti DOMAIN dan OPTIONAL_PORT (harus dihilangkan saat menggunakan port 443 untuk HTTPS)—misalnya https://www.example.com. Escape apostrof dan tanda kutip yang Anda gunakan dalam string.

    Anda juga dapat menambahkan cuplikan JSON dalam file strings.xml seperti yang ditunjukkan dalam dokumentasi DAL, tetapi dengan menggunakan pernyataan include, Anda dapat mengubah pernyataan tanpa memublikasikan versi baru aplikasi.

  4. Rujukan pernyataan dalam manifes dengan menambahkan baris berikut ke file AndroidManifest.xml aplikasi Anda di bagian <application>:

    <meta-data android:name="asset_statements" android:resource="@string/asset_statements"/>
    
  5. Memublikasikan versi baru aplikasi Android Anda ke Konsol Developer Google Play

Setelah mengikuti langkah-langkah ini, Anda telah berhasil menyiapkan berbagi kredensial dengan lancar antara situs dan aplikasi Android Anda.

Perhatikan bahwa ini bukan satu-satunya cara yang valid untuk menyiapkan DAL guna berbagi kredensial, tetapi pendekatan ini menyederhanakan proses penambahan entitas baru ke jaringan berbagi kredensial yang lancar di masa mendatang, mendorong penggunaan kembali kode, dan mengurangi potensi error selama update.