Tối đa hoá sự tiện lợi cho người dùng bằng cách bật tính năng chia sẻ thông tin đăng nhập liền mạch trên nhiều nền tảng giữa các ứng dụng và trang web của bạn. Khi nhiều trang web và ứng dụng Android dùng chung một phần phụ trợ quản lý tài khoản, tính năng này cho phép người dùng lưu thông tin xác thực một lần và tự động đề xuất thông tin xác thực đó trên mọi trang web hoặc ứng dụng Android được liên kết.
Có hai phương thức được hỗ trợ để thiết lập tính năng chia sẻ thông tin xác thực:
- Play Console: Nên dùng cho hầu hết nhà phát triển khi thiết lập tính năng chia sẻ thông tin xác thực với các ứng dụng Android. Phương thức này cho phép bạn định cấu hình tính năng chia sẻ thông tin xác thực mà không cần phát hành phiên bản mới của ứng dụng. Xin lưu ý rằng ngay cả khi sử dụng Play Console, bạn vẫn cần phát hành một tệp
assetlinks.json
hợp lệ trên trang web của mình. - Đường liên kết đến tài sản kỹ thuật số (DAL): Phù hợp với các trường hợp sử dụng nâng cao, chẳng hạn như hỗ trợ nhiều ứng dụng hoặc miền có cấu hình phức tạp hơn.
Các phương pháp hay nhất
Để mang lại trải nghiệm người dùng và tính bảo mật tối ưu, hãy triển khai tính năng chia sẻ thông tin xác thực liền mạch trên các điểm tiếp xúc sau:
- Biểu mẫu đăng nhập: Bật tính năng tự động điền thông tin xác thực.
- Biểu mẫu đăng ký: Lưu trữ thông tin xác thực mới một cách an toàn để sử dụng trên các nền tảng.
- Biểu mẫu thay đổi mật khẩu: Đồng bộ hoá nội dung cập nhật mật khẩu trên tất cả nền tảng.
- Biểu mẫu đặt lại mật khẩu: Cho phép đặt lại mật khẩu một lần để cập nhật tất cả các nền tảng.
- Miền webview: Mở rộng tính năng chia sẻ thông tin xác thực cho miền webview trong ứng dụng của bạn để xử lý việc quản lý tài khoản (đăng nhập, đăng ký, thay đổi mật khẩu hoặc đặt lại mật khẩu của máy chủ).
- Ứng dụng Android
Phương pháp này tạo ra một hệ thống quản lý thông tin xác thực hợp nhất, giúp tăng cường cả tính bảo mật và sự tiện lợi cho người dùng.
Khi thiết kế trang web quản lý tài khoản, bạn nên làm theo các phương pháp hay nhất sau đây dành cho trang web quản lý tài khoản:
- Thiết kế biểu mẫu đăng ký theo các phương pháp hay nhất
- Thiết kế biểu mẫu đăng nhập theo các phương pháp hay nhất
- Thêm URL phổ biến để thay đổi mật khẩu
Khi thiết kế ứng dụng Android, bạn nên tích hợp ứng dụng với Trình quản lý thông tin xác thực của Android.
Thiết lập tính năng chia sẻ thông tin xác thực bằng Play Console
Giờ đây, bạn có thể bật tính năng chia sẻ thông tin đăng nhập liền mạch ngay trong Play Console mà không cần phát hành phiên bản mới của ứng dụng Android. Phương thức này đơn giản hoá quy trình bằng cách quản lý các cấu hình chia sẻ thông tin đăng nhập thông qua giao diện Play Console.
Điều kiện tiên quyết
Trước khi thiết lập tính năng chia sẻ thông tin đăng nhập bằng Play Console, hãy đảm bảo bạn có:
- Các quyền cần thiết trên Play Console để truy cập vào phần Đường liên kết sâu và Cấu hình ứng dụng. Nếu bạn không phải là chủ sở hữu tài khoản, hãy yêu cầu quản trị viên của Play Console cấp cho bạn quyền truy cập thích hợp.
- Có thể phát hành tệp
/.well-known/assetlinks.json
trên từng miền tương ứng, tuân theo cú pháp Đường liên kết đến tài sản kỹ thuật số (DAL).
Bật tính năng chia sẻ thông tin đăng nhập cho miền mới
Để thiết lập tính năng chia sẻ thông tin đăng nhập một cách liền mạch trong Play Console cho một miền mới, hãy làm theo các bước sau:
- Mở Play Console rồi chuyển đến trang Đường liên kết sâu (Phát triển người dùng > Đường liên kết sâu).
- Trong thẻ Cấu hình ứng dụng, hãy nhấp vào Thêm miền.
- Nhập miền của trang web.
- Bật nút bật/tắt Bật tính năng chia sẻ thông tin đăng nhập.
- Sao chép tệp JSON đã tạo và phát hành tệp đó tại vị trí được chỉ định (
https://YOUR_DOMAIN/.well-known/assetlinks.json
theo giao thức) hoặc thêm thông tin liên quan vào tệp assetlinks.json hiện có. - Nhấp vào Tạo mối liên kết với trang web.
Nếu thành công, bạn sẽ quay lại trang Đường liên kết sâu.
Bật tính năng chia sẻ thông tin đăng nhập cho một miền hiện có
Để thiết lập tính năng chia sẻ thông tin đăng nhập một cách liền mạch trong Play Console cho một miền hiện có, hãy làm theo các bước sau:
- Chọn thẻ Cấu hình ứng dụng.
- Trong phần Miền, trong mục Cấu hình ứng dụng, hãy nhấp vào Bật trong cột Chia sẻ thông tin xác thực.
- Sao chép tệp JSON đã tạo và xuất bản tệp đó tại vị trí được chỉ định (hoặc thêm thông tin liên quan vào tệp
assetlinks.json
hiện có). - Nhấp vào Bật tính năng chia sẻ thông tin đăng nhập.
Nếu thành công, bạn sẽ quay lại trang Đường liên kết sâu.
Thiết lập tính năng chia sẻ thông tin xác thực chỉ bằng Đường liên kết đến tài sản kỹ thuật số (DAL)
Đối với các chế độ thiết lập phức tạp liên quan đến nhiều ứng dụng hoặc trang web, hãy sử dụng Đường liên kết đến tài sản kỹ thuật số (DAL) để định cấu hình tính năng chia sẻ thông tin xác thực theo cách thủ công.
Điều kiện tiên quyết
Trước khi thiết lập tính năng chia sẻ thông tin đăng nhập một cách liền mạch, hãy đảm bảo bạn có những thông tin sau cho mỗi nền tảng:
Đối với mỗi ứng dụng Android:
- Mã ứng dụng Android, như được khai báo trong tệp
build.gradle
của ứng dụng. - Vân tay số SHA256 của chứng chỉ ký.
- (Nên dùng) Đăng nhập người dùng được triển khai bằng API Trình quản lý thông tin xác thực.
Đối với mỗi trang web:
- Có thể phát hành tệp
/.well-known/assetlinks.json
trên từng miền tương ứng, tuân theo cú pháp Đường liên kết đến tài sản kỹ thuật số (DAL). - Tất cả miền quản lý tài khoản (trang đăng nhập, đăng ký, thay đổi mật khẩu hoặc đặt lại mật khẩu) phải truy cập được qua HTTPS.
Bật tính năng chia sẻ thông tin đăng nhập liền mạch trên các ứng dụng và trang web Android
Để định cấu hình tính năng chia sẻ thông tin đăng nhập liền mạch trên các ứng dụng và trang web, bạn tạo và phát hành danh sách câu lệnh Digital Asset Links để khai báo những thực thể (trang web hoặc ứng dụng Android) được phép chia sẻ thông tin đăng nhập.
Cách khai báo mối quan hệ chia sẻ thông tin xác thực:
Tạo tệp
assetlinks.json
có các câu lệnh liên kết đến trang web và ứng dụng Android, tuân theo cú pháp danh sách câu lệnh DAL:[ { "relation":[ "delegate_permission/common.get_login_creds" ], "target":{ "namespace":"web", "site":
URL } }, { "relation":[ "delegate_permission/common.get_login_creds" ], "target":{ "namespace":"android_app", "package_name":"APP_ID ", "sha256_cert_fingerprints":[ "SHA_HEX_VALUE " ] } } ]Trong đó
URL
là URL của trang web,APP_ID
là mã ứng dụng Android vàSHA_HEX_VALUE
là vân tay số SHA256 của chứng chỉ ký ứng dụng Android.Trường
relation
mô tả mối quan hệ đang được khai báo. Để khai báo rằng các ứng dụng và trang web dùng chung thông tin đăng nhập, hãy chỉ định các mối quan hệ làdelegate_permission/common.get_login_creds
. Tìm hiểu thêm về Chuỗi quan hệ trong DAL.Trường
target
là đối tượng chỉ định tài sản mà nội dung khai báo sẽ áp dụng.Sau đây là các trường xác định một trang web:
namespace
web
site
URL của trang web, có định dạng
https://domain[:optional_port
]; ví dụ: https://www.example.com.domain
phải đủ điều kiện và phải bỏ quaoptional_port
khi sử dụng cổng 443 cho HTTPS.Đích
site
chỉ được là miền gốc: bạn không thể giới hạn liên kết ứng dụng với một thư mục con cụ thể. Đừng thêm một đường dẫn vào URL, chẳng hạn như dấu gạch chéo ở cuối.Miền con không được cân nhắc để khớp: nghĩa là nếu bạn chỉ định
domain
là www.example.com, thì miền www.counter.example.com sẽ không được liên kết với ứng dụng của bạn.Sau đây là các trường xác định một ứng dụng Android:
không gian tên
android_app
package_name
Tên gói được khai báo trong tệp kê khai của ứng dụng. Ví dụ: com.example.android
sha256_cert_fingerprints
Các vân tay số SHA256 trong chứng chỉ ký của ứng dụng.
Lưu trữ tệp JSON chứa Digital Asset Links (Đường liên kết đến tài sản kỹ thuật số) tại vị trí sau trên miền đăng nhập:
https://DOMAIN[:OPTIONAL_PORT]/.well-known/assetlinks.json
, trong đóDOMAIN
đủ điều kiện vàOPTIONAL_PORT
phải được bỏ qua khi sử dụng cổng 443 cho HTTPS.Khai báo mối liên kết trong ứng dụng Android bằng cách nhúng một câu lệnh vào tệp
res/values/strings.xml
của ứng dụng Android. Câu lệnh này sẽ liên kết đến danh sách câu lệnh mà bạn đã tạo ở Bước 1. Thêm một đối tượng chỉ định các tệpassetlinks.json
cần tải. Ví dụ:<string name="asset_statements" translatable="false"> [{ \"include\": \"https://
DOMAIN [:OPTIONAL_PORT ]/.well-known/assetlinks.json\" }] </string>Thay thế
DOMAIN
vàOPTIONAL_PORT
(bạn phải bỏ qua khi sử dụng cổng 443 cho HTTPS) – ví dụ:https://www.example.com
. Tách mọi dấu nháy đơn và dấu ngoặc kép mà bạn dùng trong chuỗi.Bạn cũng có thể thêm một đoạn mã JSON vào tệp
strings.xml
như trong tài liệu về DAL, nhưng việc sử dụng câu lệnhinclude
cho phép bạn thay đổi các câu lệnh mà không cần phát hành phiên bản mới của ứng dụng.Tham chiếu câu lệnh trong tệp kê khai bằng cách thêm dòng sau vào tệp
AndroidManifest.xml
của ứng dụng trong<application>
:<meta-data android:name="asset_statements" android:resource="@string/asset_statements"/>
Phát hành phiên bản mới của ứng dụng Android lên Google Play Console
Sau khi làm theo các bước này, bạn đã thiết lập thành công tính năng chia sẻ thông tin đăng nhập một cách liền mạch giữa trang web và ứng dụng Android.
Xin lưu ý rằng đây không phải là cách duy nhất hợp lệ để thiết lập DAL để chia sẻ thông tin xác thực, nhưng phương pháp này đơn giản hoá quy trình thêm các thực thể mới vào mạng chia sẻ thông tin xác thực liền mạch trong tương lai, thúc đẩy khả năng sử dụng lại mã và giảm khả năng xảy ra lỗi trong quá trình cập nhật.