Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Thêm quy trình đăng nhập vào ứng dụng Android để bảo vệ dữ liệu người dùng và kiểm soát quyền truy cập vào các tính năng, dữ liệu của ứng dụng, giúp giữ an toàn cho ứng dụng, dữ liệu của bạn và người dùng.
Bảo vệ dữ liệu người dùng. Tính năng xác thực bảo vệ dữ liệu người dùng trong ứng dụng của bạn khỏi bị truy cập trái phép. Bằng cách yêu cầu người dùng đăng nhập, bạn có thể giúp đảm bảo người dùng chỉ xem được thông tin mà họ có quyền truy cập.
Giúp ngăn chặn hành vi lừa đảo. Việc xác thực kết hợp với quy trình xác minh danh tính sẽ khiến kẻ tấn công khó tạo tài khoản gian lận hoặc giành quyền truy cập trái phép vào các tài khoản hiện có.
Cải thiện trải nghiệm người dùng. Quy trình xác thực tinh giản giúp giảm sự phức tạp cho việc đăng ký và đăng nhập của người dùng để truy cập vào dữ liệu và dịch vụ của họ.
Tuân thủ các quy định. Quy trình đăng nhập tuân thủ các quy định có yêu cầu xác thực để bảo vệ dữ liệu.
Xác thực
Để thêm tính năng xác thực vào ứng dụng, hầu hết các dự án Android đều nên sử dụng Trình quản lý thông tin xác thực. Trình quản lý thông tin xác thực là một thư viện Jetpack hiện đại cho phép bạn tích hợp hầu hết các phương thức xác thực chính vào ứng dụng, bao gồm cả khoá truy cập, mật khẩu và các giải pháp liên kết như Đăng nhập bằng Google. So với các API xác thực cũ, chẳng hạn như API Một lần chạm, Trình quản lý thông tin xác thực có những lợi ích sau đây:
Tích hợp đơn giản hơn: Trình quản lý thông tin xác thực cho phép bạn triển khai hầu hết các lựa chọn xác thực chính bằng một API hợp nhất duy nhất.
Cải thiện trải nghiệm người dùng: Giao diện đăng nhập hợp nhất của Trình quản lý thông tin xác thực mang đến cho người dùng trải nghiệm rõ ràng, quen thuộc và nhất quán, giảm tỷ lệ người dùng rời bỏ ứng dụng, đồng thời cải thiện tốc độ đăng ký và đăng nhập.
Đăng ký và đăng nhập bằng Google qua một lần nhấn: Bạn có thể định cấu hình Trình quản lý thông tin xác thực để dùng hộp thoại tương ứng với nội dung trong ứng dụng của bạn nhằm nhắc người dùng tạo hoặc đăng nhập vào Tài khoản Google, do đó, màn hình đăng ký sẽ luôn đặt người dùng trong bối cảnh. Việc giảm sự phiền hà khi đăng ký/đăng nhập sẽ giúp cải thiện tỷ lệ thành công khi người dùng đăng ký/đăng nhập vào ứng dụng của bạn.
Bảo mật nâng cao: Việc di chuyển từ mật khẩu sang phương thức xác thực không cần mật khẩu giúp giảm các vectơ tấn công, đơn giản hoá quá trình giới thiệu của người dùng và tăng cường khả năng bảo mật của ứng dụng. Trình quản lý thông tin xác thực cho phép hỗ trợ phương thức xác thực không cần mật khẩu bằng cách sử dụng khoá truy cập.
Cải thiện tính linh hoạt: Trình quản lý thông tin xác thực tích hợp với các nhà cung cấp dịch vụ xác thực hiện có hoặc bạn có thể phát triển quy trình xác thực của riêng mình.
Trình quản lý thông tin xác thực tự động hiển thị bảng dưới cùng hợp nhất cho các phương thức xác thực hiện đại và là giải pháp thay thế hiện đại cho các phương thức triển khai xác thực hiện có, trong đó có Smart Lock cho Mật khẩu trên Android và Một lần chạm.
Tìm hiểu thêm về cách tạo tính năng xác thực trong ứng dụng Android bằng Trình quản lý thông tin xác thực:
Một số ứng dụng, chẳng hạn như trình quản lý mật khẩu, có thể điền dữ liệu mà người dùng cung cấp vào khung hiển thị trong các ứng dụng khác. Những ứng dụng điền vào khung hiển thị của các ứng dụng khác được gọi là dịch vụ tự động điền. Khung tự động điền quản lý quá trình giao tiếp giữa ứng dụng và dịch vụ tự động điền, đồng thời giúp cải thiện trải nghiệm người dùng bằng cách tiết kiệm thời gian điền vào các trường và giảm thiểu lỗi do người dùng nhập. Vì tính năng tự động điền hỗ trợ trình quản lý mật khẩu, nên người dùng nên chọn những thông tin xác thực mạnh hơn, chẳng hạn như khoá truy cập hoặc mật khẩu duy nhất do máy tạo, có thể được lưu trữ và truy xuất một cách an toàn và dễ dàng hơn.
Tích hợp tính năng xác thực bằng sinh trắc học vào ứng dụng của bạn để tăng cường bảo mật.
Xác thực bằng sinh trắc học, đặc biệt là trong các lược đồ xác thực đa yếu tố, giúp giảm nguy cơ gian lận bằng cách đảm bảo thông tin nhận dạng là xác thực và có thể xác minh được là của người dùng dự định. Tính năng xác thực bằng sinh trắc học có thể cải thiện trải nghiệm người dùng theo những cách sau:
Nội dung và mã mẫu trên trang này phải tuân thủ các giấy phép như mô tả trong phần Giấy phép nội dung. Java và OpenJDK là nhãn hiệu hoặc nhãn hiệu đã đăng ký của Oracle và/hoặc đơn vị liên kết của Oracle.
Cập nhật lần gần đây nhất: 2024-01-02 UTC.
[[["Dễ hiểu","easyToUnderstand","thumb-up"],["Giúp tôi giải quyết được vấn đề","solvedMyProblem","thumb-up"],["Khác","otherUp","thumb-up"]],[["Thiếu thông tin tôi cần","missingTheInformationINeed","thumb-down"],["Quá phức tạp/quá nhiều bước","tooComplicatedTooManySteps","thumb-down"],["Đã lỗi thời","outOfDate","thumb-down"],["Vấn đề về bản dịch","translationIssue","thumb-down"],["Vấn đề về mẫu/mã","samplesCodeIssue","thumb-down"],["Khác","otherDown","thumb-down"]],["Cập nhật lần gần đây nhất: 2024-01-02 UTC."],[],[],null,["# Add a sign-in workflow to your Android app to protect user data and control\naccess to app features and data, helping to keep your app, your data, and your\nusers safe.\n\n- **Protect user data**. Authentication protects your app's user data from unauthorized access. By requiring users to sign in, you can help ensure your users unlock only the information they're entitled to.\n- **Help prevent fraud**. Authentication coupled with identity verification makes it more difficult for an attacker to create fraudulent accounts or gain unauthorized access to existing accounts.\n- **Improve user experience**. A streamlined authentication workflow reduces complexity for your users to sign up and sign in to access their data and services.\n- **Comply with regulations**. A sign-in workflow complies with regulations that require authentication to protect data.\n\nAuthentication\n--------------\n\nTo add authentication to your app, most Android projects should use [Credential\nManager](/training/sign-in/passkeys). Credential Manager is a modern Jetpack library that lets you\nintegrate most major authentication methods into your app, including passkeys,\npasswords, and federated solutions like Sign in with Google. The benefits of\nCredential Manager over legacy authentication APIs such as One Tap include:\n\n- **Simpler integration**: Credential Manager lets you implement most major authentication options with a single, unified API.\n- **Improved user experience**: Credential Manager's unified sign-in interface gives your users a clear, familiar, and consistent experience, reduces churn, and improves registration and sign-in speeds.\n- **Single-tap Google sign in and sign up**: Credential Manager can be configured to prompt your users to create or sign in to a Google Account with a dialog that's inline with your app's content, so they're never taken out of context by a sign-up screen. Reduced sign-up or login friction improves success rates for your users as they register or log into your app.\n- **Enhanced security** : Migrating from passwords to passwordless authentication helps reduce attack vectors, simplifies user onboarding, and enhances your app's security. Credential Manager enables support for passwordless authentication using [passkeys](/design/ui/mobile/guides/patterns/passkeys).\n- **Improved flexibility**: Credential Manager integrates with existing authentication providers, or you can develop your own authentication process.\n\nCredential Manager automatically displays a unified bottom sheet for modern\nauthentication methods, and is the modern replacement for existing\nauthentication implementations, including [Smart Lock for Passwords on\nAndroid](/training/sign-in/smart-lock-migration), and [One Tap](https://developers.google.com/identity/one-tap/android/overview).\n\n\u003cbr /\u003e\n\n| \u003cbr /\u003e\n|\n| **Note:** Sign in with Google can be called as an option in the following\n| ways:\n|\n| 1. As a Credential Manager bottom sheet that automatically appears when the sign-in screen loads,\n| 2. As a distinct button that is selected by users on your sign-in screen should they actively choose to Sign in with Google.\n|\n| Don't call the Credential Manager\n| bottom sheet from the Sign in with Google button. Read\n| [Integrate Credential Manager with Sign in with Google](/training/sign-in/credential-manager) to learn more.\n|\n| \u003cbr /\u003e\n|\n\u003cbr /\u003e\n\nLearn more about how to build authentication in your Android app with Credential\nManager:\n\n- [Sign in your user with Credential Manager](/training/sign-in/passkeys)\n- [User authentication with passkeys user experience guide](/design/ui/mobile/guides/patterns/passkeys)\n- [Integrate Credential Manager with Sign in with Google](/training/sign-in/credential-manager)\n- [Integrate Credential Manager with WebView](/training/sign-in/credential-manager-webview)\n- [Passkeys on Android learning pathway](/courses/pathways/passkeys)\n\nLearn how to migrate your current authentication flows to Credential Manager:\n\n- [Upgrade from legacy Sign in with Google button flows](/training/sign-in/credential-manager#siwg-button)\n- [Migrate from Smart Lock for Passwords to Credential Manager](/training/sign-in/smart-lock-migration)\n- [Migrate from FIDO2 to Credential Manager](/training/sign-in/fido2-migration)\n\nLearn how to streamline your existing identity and authentication APIs to\nsupport passkeys and improved usability with the Credential Manager API:\n\n- [Integrate Credential Manager with your credential provider solution](/training/sign-in/credential-provider)\n- [Make Credential Manager calls on behalf of other parties for privileged\n apps](/training/sign-in/privileged-apps)\n\nAutofill\n--------\n\nSome apps, such as password managers, fill out the views in other apps with\ndata provided by the user. Apps that fill out other apps' views are called\nautofill services. The autofill framework manages the communication between an\napp and an autofill service and helps improve the user experience by saving\ntime spent filling in fields and minimizing user input errors. Since autofill\nsupports password managers, users can be encouraged to select stronger\ncredentials such as passkeys or unique, machine-generated passwords that can be\nstored and retrieved securely and with less friction.\n\nLearn more about Android's autofill framework:\n\n- [About autofill](/guide/topics/text/autofill)\n- [Optimize your app for autofill](/guide/topics/text/autofill-optimize)\n- [Build autofill services](/guide/topics/text/autofill-services)\n- [Integrate autofill with keyboards](/guide/topics/text/ime-autofill)\n\nBiometrics\n----------\n\nIntegrate biometric authentication into your app to further strengthen security.\nBiometric authentication, especially as part of multi-factor authentication\nschemes, reduces fraud exposure by ensuring the credential is authentic and\nverifiably belongs to the intended user. Biometric authentication can improve\nthe user experience in the following ways:\n\n- Enables faster logins\n- Provides opportunities for reduced-friction credential verification\n- Reduces password usage\n- Potentially aids with regulatory compliance.\n\nLearn more about [how to implement biometric authentication](/training/sign-in/biometric-auth)."]]