Halaman ini diterjemahkan oleh Cloud Translation API.
Switch to English

FIDO2 API untuk Android

FIDO2 API memungkinkan aplikasi Android membuat dan menggunakan kredensial berbasis kunci publik yang kuat dan terbukti untuk tujuan mengautentikasi pengguna. API menyediakan implementasi Klien WebAuthn , yang mendukung penggunaan BLE, NFC, dan pengautentikasi roaming USB (kunci keamanan) serta pengautentikasi platform, yang memungkinkan pengguna untuk mengautentikasi menggunakan sidik jari atau kunci layar mereka.

Integrasi

Titik masuk FIDO2 API adalah Fido2ApiClient .

API mendukung dua operasi:

  • Pendaftaran dilakukan satu kali per pengautentikasi per akun, saat pengguna mengaitkan pengautentikasi dengan akun.
  • Penandatanganan dilakukan setiap kali pihak mengandalkan ingin mengautentikasi pengguna.

Baik pendaftaran dan penandatanganan membutuhkan interaksi pengguna.

Contoh aplikasi yang mendemonstrasikan penggunaan API dapat ditemukan di https://github.com/android/security-samples/tree/master/Fido .

Interoperabilitas dengan situs web Anda

Sangat mudah untuk memungkinkan pengguna berbagi kredensial dengan lancar di situs web dan aplikasi Android Anda. Untuk melakukannya, manfaatkan Tautan Aset Digital . Anda dapat mendeklarasikan pengaitan dengan menghosting file JSON Digital Asset Links di situs Anda, dan menambahkan link ke file Digital Asset Link ke manifes aplikasi Anda.

Misalnya, jika Anda ingin mengaitkan https://example.com dengan aplikasi Android com.example.android , berikut 3 langkah yang diperlukan:

Langkah 1. Host assetlinks.json di domain Anda

Buat file JSON seperti ini dan hosting di https://example.com/.well-known/assetlinks.json .

[
  {
    "relation" : [
      "delegate_permission/common.handle_all_urls",
      "delegate_permission/common.get_login_creds"
    ],
    "target" : {
      "namespace" : "web",
      "site" : "https://example.com"
    }
  },
  {
    "relation" : [
      "delegate_permission/common.handle_all_urls",
      "delegate_permission/common.get_login_creds"
    ],
    "target" : {
      "namespace" : "android_app",
      "package_name" : "com.example.android",
      "sha256_cert_fingerprints" : [
         "DE:AD:BE:EF"
      ]
    }
  }
]

Pastikan itu dapat dirayapi dari Google dan disajikan dengan header HTTP Content-Type: application/json .

Di aplikasi Android Anda, tambahkan baris berikut ke file manifes di bawah <application> :

<meta-data android:name="asset_statements" android:resource="@string/asset_statements" />

Langkah 3. Tambahkan sumber daya string asset_statements ke file strings.xml

String asset_statements adalah objek JSON yang menentukan file assetlinks.json akan dimuat. Anda harus melepaskan diri dari apostrof dan tanda kutip yang Anda gunakan dalam string. Sebagai contoh:

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

Untuk mempelajari lebih lanjut tentang mengaitkan aplikasi dan situs web Anda, baca dokumentasi SmartLock untuk Kata Sandi di Android .