واجهة برمجة تطبيقات FIDO2 لنظام التشغيل Android

تنظيم صفحاتك في مجموعات يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.

تسمح واجهة برمجة تطبيقات FIDO2 لتطبيقات Android بإنشاء واستخدام بيانات اعتماد قوية مُثبتة استنادًا إلى المفتاح لأغراض مصادقة المستخدمين. توفّر واجهة برمجة التطبيقات تطبيق WebAuthn Client (واجهة برمجة تطبيقات الويب)، الذي يتيح استخدام مُصادقات BLE وNFC وUSB للتجوال (مفاتيح الأمان)، بالإضافة إلى برنامج مصادقة يتضمّن النظام الأساسي، ما يسمح باستخدام المستخدم للمصادقة باستخدام بصمة الإصبع أو قفل الشاشة.

الدمج

نقطة إدخال FIDO2 API هي Fido2ApiClient.

تدعم واجهة برمجة التطبيقات عمليتَين:

  • عملية التسجيل تُجرى مرة واحدة لكل برنامج مصادقة لكل حساب، عندما يربط المستخدم تطبيق مصادقة بحساب ما.
  • يتم التوقيع عندما تريد الجهة المعتمَدة مصادقة مستخدم.

يتطلب كل من التسجيل والتوقيع تفاعل المستخدم.

ويمكن العثور على نموذج يوضح استخدام واجهة برمجة التطبيقات على https://github.com/android/security-samples/tree/master/Fido.

إمكانية التشغيل التفاعلي مع موقعك الإلكتروني

من السهل السماح للمستخدمين بمشاركة بيانات الاعتماد بسلاسة على موقعك الإلكتروني وتطبيق Android. ولإجراء ذلك، عليك الاستفادة من روابط مواد العرض الرقمية. يمكنك الإعلان عن عمليات الربط من خلال استضافة ملف روابط التنقل إلى مواد العرض الرقمية بتنسيق JSON على موقعك الإلكتروني، وإضافة رابط إلى ملف روابط مواد العرض الرقمية إلى بيان تطبيقك.

على سبيل المثال، إذا كنت تريد ربط https://example.com بتطبيق متوافق مع Android com.example.android، إليك 3 خطوات مطلوبة:

الخطوة الأولى: استضافة assetlinks.json على نطاقك

يمكنك إنشاء ملف JSON مثل هذا واستضافته على 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"
      ]
    }
  }
]

تأكّد من أنّه يمكن لمحرّك البحث Google الزحف إليه وعرضه من خلال عنوان HTTP Content-Type: application/json.

sha256_cert_fingerprints هو الملف المرجعي لشهادة SHA256 لشهادة توقيع التطبيق. يمكنك الاطّلاع على مزيد من التفاصيل في وثائق روابط تطبيقات Android.

في تطبيق Android، أضف السطر التالي إلى ملف البيان ضمن <application>:

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

الخطوة الثالثة: إضافة مورد سلسلة asset_statements إلى ملفString.xml

السلسلة asset_statements هي كائن JSON يحدّد ملفات assetlinks.json المراد تحميلها. يجب تخطي أي فواصل عليا وعلامات اقتباس تستخدمها في السلسلة. مثال:

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

لمعرفة المزيد من المعلومات عن ربط تطبيقك بموقعك الإلكتروني، يُرجى الاطّلاع على مستند SmartLock لكلمات المرور على Android.