Android için FIDO2 API'sı

Koleksiyonlar ile düzeninizi koruyun İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.

FIDO2 API, Android uygulamalarının, kullanıcıların kimliğini doğrulamak için güçlü, onaylanmış, ortak anahtara dayalı kimlik bilgileri oluşturmasına ve kullanmasına olanak tanır. API; BDE, NFC ve USB dolaşım kimlik doğrulayıcılarının (güvenlik anahtarları) kullanımını destekleyen bir WebAuthn İstemcisi uygulaması ve platform kimlik doğrulayıcısı sağlar kullanıcının parmak izini veya ekran kilidini kullanarak kimlik doğrulaması yapması.

Entegrasyon

FIDO2 API giriş noktası Fido2ApiClient'tır.

API iki işlemi destekler:

  • Kimlik doğrulama, kullanıcı bir kimlik doğrulayıcıyı bir hesapla ilişkilendirdiğinde hesap başına her kimlik doğrulayıcı için bir kez yapılır.
  • İmzalama, bağımlı taraf bir kullanıcının kimliğini doğrulamak istediğinde yapılır.

Hem kayıt hem de imzalama işlemi, kullanıcı etkileşimi gerektirir.

API kullanımını gösteren örnek bir uygulamayı https://github.com/android/security-samples/tree/master/Fido adresinde bulabilirsiniz.

Web sitenizle birlikte çalışabilirlik

Kullanıcıların kimlik bilgilerini web siteniz ve Android uygulamanız arasında sorunsuz bir şekilde paylaşmasına izin vermek basittir. Bunu yapmak için Dijital Öğe Bağlantılarından yararlanın. Web sitenizde bir Digital Asset Link JSON dosyası barındırıp uygulamanızın manifest dosyasına bir Digital Asset Link dosyası bağlantısı ekleyerek ilişkilendirmeleri bildirebilirsiniz.

Örneğin, https://example.com öğesini bir Android uygulamasıyla ilişkilendirmek istiyorsanız com.example.android şu 3 adımı uygulayın:

1. Adım: Alanınızda assetlinks.json barındırma

Bunun gibi bir JSON dosyası oluşturun ve dosyayı https://example.com/.well-known/assetlinks.json adresinde barındırın.

[
  {
    "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"
      ]
    }
  }
]

Google'dan taranabilir olduğundan ve HTTP başlığıyla sunulduğundan emin olunContent-Type: application/json başlıklı makaleyi inceleyin.

sha256_cert_fingerprints, uygulamanızın imzalama sertifikasının SHA256 parmak izleridir. Android Uygulama Bağlantıları dokümanlarından daha fazla bilgi edinebilirsiniz.

Android uygulamanızda, aşağıdaki satırı <application> dosyasının manifest dosyasına ekleyin:

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

3. Adım. string.xml dosyasına bir asset_statements dizesi kaynağı ekleyin

asset_statements dizesi, yüklenecek assetlinks.json dosyalarını belirten bir JSON nesnesidir. Dizede kullandığınız tüm kesme işaretlerini ve tırnak işaretlerini kod dışına almanız gerekir. Örnek:

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

Uygulamanızı ve web sitenizi ilişkilendirme hakkında daha fazla bilgi edinmek için Android'de Şifreler için SmartLock dokümanlarını okuyun.