برای ارائه یک تجربه قوی از رمز عبور، توصیه میکنیم برنامه شما موارد زیر را پیادهسازی کند:
- مدیریت رمز عبور کاربر : یک بخش اختصاصی برای مدیریت رمز عبور در تنظیمات برنامه خود قرار دهید تا کاربران بتوانند رمزهای عبور خود را مدیریت کنند.
- یکپارچهسازی ارائهدهنده اعتبارنامه : برای برقراری ارتباط با ارائهدهندگان اعتبارنامه، سرور برنامه میتواند نقاط پایانی کلید عبور را برای ثبت، احراز هویت و حذف پیادهسازی کند.
مدیریت رمز عبور کاربر
برای اینکه به کاربران خود اجازه دهید کلیدهای عبور خود را مدیریت کنند، یک بخش مدیریت کلید عبور اختصاصی در برنامه خود قرار دهید تا کاربران بتوانند کلیدهای عبور خود را ایجاد، مشاهده، تغییر نام و حذف کنند.
نمایش رمزهای عبور موجود
در تنظیمات برنامه خود برای کلیدهای عبور، اطلاعاتی از جمله ارائهدهنده اعتبارنامهای که برای ایجاد اعتبارنامه استفاده شده است، تاریخ ایجاد و آخرین تاریخ استفاده را در اختیار کاربران خود قرار دهید.
برای به دست آوردن اطلاعات ارائه دهنده اعتبارنامه، از شناسه منحصر به فرد جهانی گواهی تأییدکننده (AAGUID) مرتبط با کلید عبور مربوطه استفاده کنید. AAGUID بخشی از PublicKeyCredential است که هنگام ایجاد کلید عبور بازگردانده میشود. AAGUID به شما امکان میدهد ارائه دهنده اعتبارنامهای را که کلید عبور را ایجاد کرده است، شناسایی کنید. برای کسب اطلاعات بیشتر، به بخش تعیین ارائه دهنده کلید عبور با AAGUID مراجعه کنید.
برنامه شما میتواند جزئیات زیر را در مورد یک رمز عبور نمایش دهد:
- نام رمز عبور: نامی که هنگام ثبت رمز عبور داده شده است را نمایش میدهد. نام ایدهآل بر اساس ارائهدهنده اعتبارنامه (با استفاده از AAGUID) است؛ اگر ارائهدهنده قابل شناسایی نیست، از اطلاعات مدل دستگاه از
android.os.Buildاستفاده کنید. - لوگوی ارائه دهنده: لوگوی ارائه دهنده اعتبارنامه را نمایش دهید. این نشانه بصری به کاربران کمک میکند تا به سرعت رمز عبور صحیحی را که میخواهند مدیریت کنند، شناسایی کنند.
- مهرهای زمانی: مهر زمانی ایجاد و آخرین مهر زمانی استفاده شده را ارائه دهید. این اطلاعات به کاربران کمک میکند تا اعتبارنامههای خود را مدیریت کرده و کلیدهای عبور قدیمی یا استفاده نشده را شناسایی کنند.
- نشانگر وضعیت همگامسازی: بهطور پیشفرض، کلیدهای عبور با ارائهدهندگان اعتبارنامه همگامسازی میشوند، اما قابلیتهای همگامسازی ممکن است متفاوت باشد. برای جلوگیری از سردرگمی کاربر، اگر کلید عبور از همگامسازی پشتیبانی نمیکند، بهطور واضح مشخص کنید.
- جزئیات آخرین ورود (اختیاری): جزئیاتی مانند مرورگر، سیستم عامل یا آدرس IP یا موقعیت مکانی آخرین ورود را ارائه دهید. این یک ویژگی اختیاری ارزشمند برای کاربران است تا فعالیتهای مشکوک احتمالی را شناسایی کنند.
جدا از این جزئیات، صفحه نمایش باید دارای دکمههایی باشد که به کاربران امکان مدیریت - حذف یا تغییر نام - هر کلید عبور را بدهد.

ایجاد چندین رمز عبور
در حالی که شما باید در طول مسیر کاربری، مثلاً بلافاصله پس از ورود به سیستم، به کاربران خود فرصت ایجاد کلید عبور را بدهید، بخش تنظیمات کلید عبور برنامه شما باید به کاربران اجازه دهد تا از طریق ارائهدهنده اعتبارنامه انتخابی خود، کلید عبور ایجاد کنند .
برای کاهش خطر قفل شدن حساب، به کاربران اجازه دهید چندین رمز عبور را با ارائه دهندگان مختلف اعتبارنامه ثبت کنند. اگر یک ارائه دهنده اعتبارنامه غیرقابل دسترسی شود - به عنوان مثال، اگر پلتفرم پشتیبانی را متوقف کند یا کاربر دسترسی خود را از دست بدهد - میتوانند از یک رمز عبور دیگر برای ورود به سیستم استفاده کنند. مطمئن شوید که پایگاه داده شما از ذخیره این اعتبارنامههای چندگانه برای هر کاربر پشتیبانی میکند. با این حال، میتوانید از ایجاد رمز عبور برای همان حساب با همان ارائه دهنده اعتبارنامه توسط کاربران جلوگیری کنید .
حذف کلیدهای عبور
بخش تنظیمات کلیدهای عبور برنامه شما باید به کاربران اجازه دهد کلیدهای عبور را حذف کنند.
ادغام ارائه دهنده اعتبارنامه
برای حفظ ثبات کلیدهای عبور بین سرور برنامه و ارائه دهنده اعتبارنامه، مدیریت کلید عبور را از مسیر از پیش تعریف شده /.well-known/passkey-endpoints در سرور برنامه خود فعال کنید. این به ارائه دهندگان اعتبارنامه اجازه میدهد تا مستقیماً از این نقاط پایانی برای مدیریت کلید عبور استفاده کنند. برای کسب اطلاعات بیشتر، به افزودن نقاط پایانی کلید عبور مراجعه کنید.
منابع اضافی
- راهنمای تجربه کاربری کلیدهای عبور
- ویدیو: چگونه با پشتیبانی از رمز عبور، وابستگی به رمزهای عبور را در برنامههای اندروید کاهش دهیم
- Codelab: بیاموزید که چگونه با استفاده از API مدیریت اعتبار در برنامه اندروید خود، مراحل احراز هویت را ساده کنید
- برنامه نمونه: CredentialManager