تسمح واجهة برمجة تطبيقات 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.
الخطوة الثانية: اربط بـ assetlinks.json
في التطبيق المتوافق مع 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.