Di chuyển từ Bộ công cụ nhận dạng của Google sang Nền tảng nhận dạng của Google Cloud

Phiên bản mới nhất của Bộ công cụ nhận dạng của Google đã được phát hành với tên gọi Nền tảng nhận dạngXác thực Firebase. Từ giờ trở đi, hoạt động của tính năng trên Bộ công cụ nhận dạng sẽ bị treo. Mọi hoạt động phát triển tính năng mới sẽ được thực hiện trên Nền tảng nhận dạng và Xác thực Firebase. Chúng tôi khuyến khích các nhà phát triển Bộ công cụ danh tính chuyển sang các nền tảng này ngay khi các nền tảng này phù hợp với ứng dụng của họ.

Tính năng mới

Identity Platform đã có nhiều điểm cải tiến đáng kể về tính năng so với Google Identity Toolkit:

  • Bảng điều khiển mới dành cho quản trị viên

    Identity Platform có bảng điều khiển mới dành cho nhà phát triển cho phép bạn xem, sửa đổi và xoá người dùng; việc này có thể hữu ích khi gỡ lỗi quy trình đăng nhập và đăng ký của bạn. Bảng điều khiển cũng cho phép bạn định cấu hình các phương thức xác thực và tuỳ chỉnh các mẫu email.

  • Các phương pháp xác thực mới

    Nền tảng danh tính hỗ trợ các tiêu chuẩn liên kết doanh nghiệp, chẳng hạn như SAML và OIDC, cho phép bạn mở rộng quy mô các ứng dụng và dịch vụ SaaS. Identity Platform cũng hỗ trợ các nhà cung cấp như GitHub, Microsoft, Yahoo và nhiều nhà cung cấp khác. Bạn có thể sử dụng tính năng đăng nhập ẩn danh để tạo một mã nhận dạng người dùng duy nhất mà không yêu cầu người dùng thực hiện quy trình đăng nhập hoặc đăng ký. Điều này cho phép bạn thực hiện các lệnh gọi API đã xác thực như với người dùng thông thường. Khi người dùng quyết định đăng ký tài khoản, tất cả hoạt động sẽ được giữ nguyên với cùng một mã nhận dạng người dùng. Điều này hữu ích cho các trường hợp như giỏ hàng phía máy chủ hoặc các ứng dụng khác mà bạn muốn thu hút người dùng trước khi gửi chúng thông qua quy trình đăng ký.

  • Tự tin mở rộng quy mô nhờ Thoả thuận mức độ cung cấp dịch vụ và Dịch vụ hỗ trợ của Google Cloud

    Identity Platform được xây dựng trên cơ sở hạ tầng đáng tin cậy của Google, đồng thời cung cấp các Thoả thuận mức độ cung cấp dịch vụ cũng như dịch vụ hỗ trợ của Google Cloud. Điều này có nghĩa là bạn có thể tự tin mở rộng quy mô dịch vụ của mình và tin tưởng vào Google để cung cấp khả năng phục hồi, khả năng hoạt động và khả năng mở rộng mà bạn cần.

  • Quyền truy cập vào toàn bộ Firebase

    Firebase là nền tảng trên thiết bị di động giúp bạn nhanh chóng phát triển các ứng dụng chất lượng cao, gia tăng cơ sở người dùng và kiếm nhiều tiền hơn. Firebase được tạo nên từ các tính năng bổ sung mà bạn có thể kết hợp cho phù hợp với nhu cầu của mình và bao gồm cơ sở hạ tầng cho: phân tích trên thiết bị di động, gửi thông báo trên đám mây, cơ sở dữ liệu thời gian thực, lưu trữ tệp, lưu trữ tĩnh, cấu hình từ xa, báo cáo sự cố trên thiết bị di động và kiểm thử Android .

  • Cập nhật giao diện người dùng

    Chúng tôi đã xây dựng lại hoàn toàn luồng giao diện người dùng dựa trên nghiên cứu mới nhất của Google về trải nghiệm người dùng. Những quy trình này bao gồm khôi phục mật khẩu, liên kết tài khoản, các quy trình phân định tài khoản mới/hiện có thường mất nhiều thời gian để viết mã và gỡ lỗi. Dịch vụ này tích hợp Smart Lock cho Mật khẩu trên Android, giúp cải thiện đáng kể tỷ lệ chuyển đổi đăng nhập và đăng ký cho các ứng dụng tham gia. Phiên bản này cũng hỗ trợ việc sửa đổi giao diện dễ dàng để phù hợp với ứng dụng của bạn, đồng thời để có thể tuỳ chỉnh tối đa, phiên bản AndroidiOS đã trở thành nguồn mở.

  • Đơn giản hoá quy trình thiết lập máy chủ

    Với Bộ công cụ nhận dạng, chúng tôi nhận thấy nhiều nhà phát triển đã chọn không triển khai quy trình khôi phục email. Quy trình này khiến người dùng không thể khôi phục tài khoản của họ nếu quên mật khẩu. Nền tảng danh tính có thể gửi email xác minh, đặt lại mật khẩu và thông báo mật khẩu đã thay đổi cho người dùng. Ngoài ra, bạn có thể dễ dàng tuỳ chỉnh văn bản cho người dùng. Ngoài ra, bạn không cần lưu trữ tiện ích giao diện người dùng để lưu trữ các lệnh chuyển hướng và hoàn thành các thao tác thay đổi mật khẩu.

  • SDK mới

    Tất cả API máy chủ của Bộ công cụ nhận dạng hiện đã có sẵn trong từng thư viện ứng dụng của chúng tôi (Android, iOS, web). Nhà phát triển sẽ có thể đăng nhập và đăng ký người dùng cũ và mới, truy cập vào thuộc tính người dùng, liên kết, cập nhật và xoá tài khoản, đặt lại mật khẩu và làm nhiều việc khác mà không bị ràng buộc với một giao diện người dùng cố định. Nếu muốn, bạn có thể tự xây dựng toàn bộ quy trình đăng nhập và trải nghiệm của riêng mình trên API này.

  • Quản lý phiên cho ứng dụng di động

    Với Bộ công cụ nhận dạng, các ứng dụng sẽ tự tạo trạng thái phiên hoạt động dựa trên sự kiện xác thực ban đầu của Bộ công cụ nhận dạng. Nền tảng nhận dạng sử dụng dịch vụ phụ trợ lấy mã làm mới, đúc từ sự kiện xác thực và trao đổi mã đó để lấy mã truy cập trong một giờ cho Android, iOS và JavaScript. Khi người dùng thay đổi mật khẩu, mã thông báo làm mới sẽ không thể tạo mã truy cập mới nữa, do đó vô hiệu hoá quyền truy cập cho đến khi người dùng xác thực lại trên thiết bị đó.

Điểm khác biệt về tính năng

Một số tính năng của Bộ công cụ nhận dạng hiện chưa có trên Nền tảng danh tính, trong khi một số tính năng khác đã được thiết kế lại và hoạt động theo cách khác. Bạn có thể chọn không di chuyển ngay lập tức nếu những tính năng này quan trọng đối với ứng dụng. Trong nhiều trường hợp, các tính năng này có thể không quan trọng đối với ứng dụng hoặc có thể có các bản dự phòng dễ dàng giúp bạn tiếp tục di chuyển.

Sự khác biệt phía máy chủ

Dịch vụ Bộ công cụ nhận dạng chính có các API REST cơ bản, logic xác thực tài khoản và cơ sở dữ liệu người dùng chính chỉ mới trải qua những lần cập nhật nhỏ. Tuy nhiên, một số tính năng và cách thức bạn tích hợp Nền tảng nhận dạng vào dịch vụ của mình đã thay đổi.

  • Nhà cung cấp danh tính

    PayPal và AOL không được hỗ trợ. Người dùng có tài khoản từ các IDP này vẫn có thể đăng nhập vào ứng dụng của bạn bằng quy trình khôi phục mật khẩu và thiết lập mật khẩu cho tài khoản của họ.

  • Thư viện máy chủ

    Hiện tại, có SDK quản trị cho Java, Node.js, Python, Go và C#.

  • Email quản lý tài khoản

    Firebase hoặc từ máy chủ thư của chính nhà phát triển có thể thực hiện thông báo đặt lại mật khẩu, xác minh email và thay đổi email. Hiện tại, các mẫu email chỉ cung cấp khả năng tuỳ chỉnh giới hạn từ giao diện người dùng, nhưng có thể được tuỳ chỉnh thêm bằng SDK quản trị

  • Xác nhận thay đổi địa chỉ email

    Trong Bộ công cụ nhận dạng, khi người dùng quyết định thay đổi địa chỉ email, bộ công cụ này sẽ gửi email tới địa chỉ mới có đường liên kết để tiếp tục quy trình thay đổi địa chỉ email.

    Firebase xác nhận thay đổi địa chỉ email bằng cách gửi email thu hồi đến địa chỉ email cũ kèm theo đường liên kết để huỷ bỏ thay đổi.

  • Ra mắt IDP

    Bộ công cụ nhận dạng có khả năng thêm dần các nhà cung cấp danh tính vào hệ thống đăng nhập của bạn để bạn có thể thử nghiệm tác động đối với các yêu cầu hỗ trợ của mình. Tính năng này đã bị xoá trong phần Xác thực Firebase.

Sự khác biệt phía máy khách

Trong Nền tảng nhận dạng, các tính năng do Bộ công cụ nhận dạng của Google cung cấp được chia thành hai thành phần:

  • SDK ứng dụng và máy chủ

    Trong Nền tảng nhận dạng, chức năng do API REST của Bộ công cụ nhận dạng cung cấp đã được đóng gói vào SDK ứng dụng có sẵn cho Android, iOS và JavaScript. Bạn có thể sử dụng SDK để đăng nhập và đăng ký người dùng; truy cập vào thông tin hồ sơ người dùng; liên kết, cập nhật và xoá tài khoản; cũng như đặt lại mật khẩu bằng SDK ứng dụng thay vì giao tiếp với dịch vụ phụ trợ thông qua lệnh gọi REST.

  • Tiện ích giao diện người dùng

    Tất cả các luồng giao diện người dùng quản lý việc đăng nhập, đăng ký, khôi phục mật khẩu và liên kết tài khoản đã được xây dựng lại bằng cách sử dụng SDK ứng dụng và được đóng gói dưới dạng một tiện ích đăng nhập. Các SDK này có sẵn dưới dạng SDK nguồn mở dành cho iOS, AndroidWeb, đồng thời cho phép bạn tùy chỉnh hoàn toàn các quy trình theo những cách không thể thực hiện được với Bộ công cụ nhận dạng.

Những điểm khác biệt khác bao gồm:

  • Số phiên và quá trình di chuyển

    Vì các phiên được quản lý theo cách khác nhau trong Bộ công cụ nhận dạng và Nền tảng danh tính, nên các phiên hiện tại của người dùng sẽ bị chấm dứt khi nâng cấp SDK và người dùng sẽ phải đăng nhập lại.

Trước khi bắt đầu

Trước khi có thể di chuyển từ Bộ công cụ nhận dạng sang Nền tảng nhận dạng, bạn phải:

  1. Mở Cloud Console rồi chọn dự án Bộ công cụ nhận dạng của bạn.

  2. Trên Marketplace, hãy duyệt tới Nền tảng nhận dạng và chọn "Bật nền tảng nhận dạng"

  3. Mở Tài khoản dịch vụ. Tại đây, bạn có thể thấy tài khoản dịch vụ mình đã định cấu hình trước đó cho Bộ công cụ nhận dạng.

  4. Bên cạnh tài khoản dịch vụ, hãy nhấp vào > Create key (Tạo khoá). Sau đó, trong hộp thoại Create private key (Tạo khoá riêng tư), hãy đặt Loại khoá thành JSON (JSON) và nhấp vào Create (Tạo). Tệp JSON chứa thông tin xác thực của tài khoản dịch vụ sẽ được tải xuống cho bạn. Bạn sẽ cần có dữ liệu này để khởi chạy SDK trong bước tiếp theo.

  5. Quay lại Cloud Console. Trong phần Nhà cung cấp, trong phương thức đăng nhập "Email/Mật khẩu", hãy mở trang Mẫu email. Sau đó, bạn có thể tuỳ chỉnh các mẫu của ứng dụng.

    Trong Bộ công cụ nhận dạng, khi người dùng đặt lại mật khẩu, thay đổi địa chỉ email hoặc xác minh địa chỉ email của họ, bạn cần lấy mã OOB từ máy chủ Bộ công cụ nhận dạng rồi gửi mã cho người dùng qua email. Nền tảng nhận dạng sẽ gửi email dựa trên các mẫu bạn định cấu hình mà không cần làm gì thêm.

  6. Không bắt buộc: Nếu bạn cần truy cập vào các dịch vụ Identity Platform trên máy chủ của mình, hãy cài đặt Firebase SDK.

    1. Bạn có thể cài đặt SDK quản trị Node.js với npm:

      $ npm init
      $ npm install --save firebase-admin
      
    2. Trong mã của mình, bạn có thể truy cập vào Firebase bằng:

      var admin = require('firebase-admin');
      var app = admin.initializeApp({
        credential: admin.credential.cert('path/to/serviceAccountCredentials.json')
      });
      

Tiếp theo, hãy hoàn tất các bước di chuyển cho nền tảng của ứng dụng: Android, iOS, web.

Máy chủ và JavaScript

Những thay đổi đáng chú ý

Có một số khác biệt bổ sung trong quá trình triển khai web của Nền tảng nhận dạng so với Bộ công cụ nhận dạng.

  • Quản lý phiên trên web

    Trước đây, khi người dùng xác thực bằng tiện ích Bộ công cụ nhận dạng, một cookie đã được đặt cho người dùng, cookie này được dùng để khởi động phiên. Cookie này có thời gian tồn tại hai tuần và đã được dùng để cho phép người dùng sử dụng tiện ích quản lý tài khoản để thay đổi mật khẩu và địa chỉ email. Một số trang web dùng cookie này để xác thực tất cả các yêu cầu khác trên trang web. Các trang web khác đã dùng cookie này để tạo cookie của riêng mình thông qua hệ thống quản lý cookie của khung.

    SDK ứng dụng của Nền tảng danh tính hiện quản lý Mã thông báo nhận dạng và hoạt động với phần phụ trợ của Nền tảng danh tính để duy trì phiên làm mới. Phần phụ trợ sẽ hết hạn các phiên khi có các thay đổi quan trọng về tài khoản (như thay đổi mật khẩu người dùng). Mã thông báo mã nhận dạng không được tự động đặt làm cookie trên ứng dụng web và chỉ có thời gian tồn tại trong vòng một giờ. Trừ phi bạn chỉ muốn các phiên có thời lượng một giờ, mã thông báo mã nhận dạng không thích hợp để sử dụng làm cookie để xác thực tất cả các yêu cầu trang của bạn. Thay vào đó, bạn cần thiết lập trình nghe khi người dùng đăng nhập, lấy mã thông báo mã nhận dạng, xác thực mã thông báo và tạo cookie của riêng bạn thông qua hệ thống quản lý cookie của khung.

    Bạn sẽ cần đặt thời gian tồn tại của phiên của cookie dựa trên nhu cầu bảo mật của ứng dụng.

  • Quy trình đăng nhập trên web

    Trước đây, người dùng được chuyển hướng đến accountchooser.com khi đăng nhập để tìm hiểu giá trị nhận dạng mà người dùng muốn sử dụng. Giờ đây, quy trình của giao diện người dùng Identity Platform bắt đầu bằng danh sách các phương thức đăng nhập, bao gồm cả tuỳ chọn email chuyển tới accountchooser.com dành cho web và sử dụng hintRequest API trên Android. Ngoài ra, địa chỉ email không còn bắt buộc trong giao diện người dùng. Điều này sẽ giúp việc hỗ trợ người dùng ẩn danh, người dùng xác thực tuỳ chỉnh hoặc người dùng từ các nhà cung cấp không yêu cầu địa chỉ email trở nên dễ dàng hơn.

  • Tiện ích quản lý tài khoản

    Tiện ích này cung cấp giao diện người dùng để người dùng thay đổi địa chỉ email, thay đổi mật khẩu hoặc huỷ liên kết tài khoản của họ khỏi nhà cung cấp danh tính. API này hiện đang trong quá trình phát triển.

  • Tiện ích/nút đăng nhập

    Các tiện ích như nút đăng nhập và thẻ người dùng không còn được cung cấp nữa. Bạn có thể tạo các trình kiểm thử này rất dễ dàng bằng cách sử dụng API xác thực Firebase.

  • Không có signOutUrl

    Bạn sẽ cần gọi firebase.auth.signOut() và xử lý lệnh gọi lại.

  • Không có oobActionUrl

    Việc gửi email hiện do Nền tảng nhận dạng xử lý và được định cấu hình trong bảng điều khiển của Firebase.

  • Tuỳ chỉnh CSS

    Tiện ích giao diện người dùng sử dụng kiểu Material Design Lite, giúp tự động thêm ảnh động Material Design.

Bước 1: Thay đổi mã máy chủ

  1. Nếu máy chủ của bạn dựa vào mã thông báo Bộ công cụ nhận dạng (có hiệu lực trong 2 tuần) để quản lý các phiên hoạt động của người dùng trên web, thì bạn cần chuyển đổi máy chủ để sử dụng cookie trong phiên hoạt động của chính nó.

    1. Triển khai một điểm cuối để xác thực mã thông báo mã nhận dạng và đặt cookie cho phiên hoạt động cho người dùng. Ứng dụng khách sẽ gửi mã thông báo mã nhận dạng Firebase đến điểm cuối này.
    2. Nếu yêu cầu đến chứa cookie phiên của riêng bạn, bạn có thể xem xét người dùng đã xác thực. Nếu không, hãy coi yêu cầu là chưa được xác thực.
    3. Nếu không muốn người dùng nào mất các phiên đã đăng nhập hiện có, bạn nên đợi 2 tuần để tất cả các mã thông báo Bộ công cụ nhận dạng hết hạn hoặc thực hiện xác thực mã thông báo kép cho ứng dụng web của bạn như mô tả dưới đây trong bước 3.
  2. Tiếp theo, vì mã thông báo mã nhận dạng khác với mã thông báo của Bộ công cụ nhận dạng, nên bạn phải cập nhật logic xác thực mã thông báo. Cài đặt SDK quản trị cho máy chủ của bạn; hoặc nếu bạn sử dụng một ngôn ngữ không được SDK quản trị hỗ trợ, hãy tải thư viện xác thực mã thông báo JWT xuống cho môi trường của bạn và xác thực mã thông báo đúng cách.

  3. Trong lần đầu cập nhật ở trên, có thể bạn vẫn sẽ thấy đường dẫn mã dựa vào mã thông báo Bộ công cụ nhận dạng. Nếu bạn có ứng dụng iOS hoặc Android, người dùng sẽ cần nâng cấp lên phiên bản ứng dụng mới để đường dẫn mã mới hoạt động. Nếu không muốn buộc người dùng cập nhật ứng dụng, bạn có thể thêm logic xác thực máy chủ bổ sung để kiểm tra mã thông báo và xác định xem cần sử dụng SDK Firebase hay SDK Bộ công cụ nhận dạng để xác thực mã thông báo. Nếu bạn chỉ có một ứng dụng web, tất cả các yêu cầu xác thực mới sẽ chuyển sang Nền tảng nhận dạng và do đó, bạn chỉ cần sử dụng các phương thức xác minh mã thông báo mã nhận dạng.

Hãy xem Tài liệu tham khảo về API Web.

Bước 2: Cập nhật HTML của bạn

  1. Thêm mã khởi chạy vào ứng dụng của bạn:

    1. Mở dự án trong Cloud Console.
    2. Trên trang nhà cung cấp, hãy nhấp vào Chi tiết thiết lập ứng dụng. Một đoạn mã khởi động Nền tảng nhận dạng sẽ hiển thị.
    3. Sao chép và dán đoạn mã khởi chạy vào trang web của bạn.
  2. Thêm Tiện ích xác thực vào ứng dụng của bạn:

    <script src="https://www.gstatic.com/firebasejs/ui/live/0.4/firebase-ui-auth.js"></script>
    <link type="text/css" rel="stylesheet" href="https://www.gstatic.com/firebasejs/ui/live/0.4/firebase-ui-auth.css" />
    <!-- *******************************************************************************************
       * TODO(DEVELOPER): Paste the initialization snippet from:
       * Firebase Console > Overview > Add Firebase to your web app. *
       ***************************************************************************************** -->
    <script type="text/javascript">
      // FirebaseUI config.
      var uiConfig = {
        'signInSuccessUrl': '<url-to-redirect-to-on-success>',
        'signInOptions': [
          // Leave the lines as is for the providers you want to offer your users.
          firebase.auth.GoogleAuthProvider.PROVIDER_ID,
          firebase.auth.FacebookAuthProvider.PROVIDER_ID,
          firebase.auth.TwitterAuthProvider.PROVIDER_ID,
          firebase.auth.GithubAuthProvider.PROVIDER_ID,
          firebase.auth.EmailAuthProvider.PROVIDER_ID
        ],
        // Terms of service url.
        'tosUrl': '<your-tos-url>',
      };
    
      // Initialize the FirebaseUI Widget using Firebase.
      var ui = new firebaseui.auth.AuthUI(firebase.auth());
      // The start method will wait until the DOM is loaded.
      ui.start('#firebaseui-auth-container', uiConfig);
    </script>
    
  3. Xoá SDK Bộ công cụ nhận dạng khỏi ứng dụng của bạn.

  4. Nếu dựa vào mã thông báo giá trị nhận dạng cho Bộ công cụ nhận dạng để quản lý phiên, bạn phải thực hiện những thay đổi sau ở phía máy khách:

    1. Sau khi đăng nhập thành công bằng Nền tảng danh tính, hãy nhận mã thông báo mã nhận dạng bằng cách gọi firebase.auth().currentUser.getToken().

    2. Gửi mã thông báo mã nhận dạng đến máy chủ phụ trợ, xác thực mã đó và cấp cookie cho phiên của riêng bạn.

      Đừng chỉ dựa vào cookie phiên khi thực hiện các thao tác nhạy cảm hoặc gửi yêu cầu chỉnh sửa đã xác thực đến máy chủ của bạn. Bạn sẽ cần phải cung cấp thêm biện pháp bảo vệ giả mạo yêu cầu trên nhiều trang web (CSRF).

      Nếu khung của bạn không cung cấp biện pháp bảo vệ CSRF, một cách để ngăn chặn một cuộc tấn công là lấy mã thông báo mã nhận dạng cho người dùng đã đăng nhập bằng getToken() và đưa mã thông báo vào mỗi yêu cầu (cookie của phiên cũng sẽ được gửi theo mặc định). Sau đó, bạn sẽ xác thực mã thông báo đó bằng SDK quản trị cùng với bước kiểm tra cookie của phiên mà khung phụ trợ của bạn đã hoàn tất. Điều này sẽ khiến các cuộc tấn công CSRF khó thành công hơn vì mã thông báo mã nhận dạng chỉ được lưu trữ bằng bộ nhớ web và không bao giờ được lưu trong cookie.

    3. Mã thông báo Bộ công cụ nhận dạng có hiệu lực trong 2 tuần. Bạn nên tiếp tục cấp mã thông báo trong 2 tuần gần nhất hoặc kéo dài hơn hoặc ngắn hơn tuỳ theo các yêu cầu về bảo mật của ứng dụng. Khi người dùng đăng xuất, hãy xoá cookie của phiên hoạt động.

Bước 3: Cập nhật URL chuyển hướng của IDP

  1. Trong Cloud Console, hãy mở phần Nhà cung cấp.

  2. Đối với mỗi nhà cung cấp dịch vụ đăng nhập được liên kết mà bạn hỗ trợ, hãy làm như sau:

    1. Nhấp vào tên của nhà cung cấp dịch vụ đăng nhập.
    2. Sao chép URI chuyển hướng OAuth.
    3. Trong bảng điều khiển dành cho nhà phát triển của trình cung cấp dịch vụ đăng nhập, hãy cập nhật URI chuyển hướng OAuth.

Android

Bước 1: Thêm Nền tảng nhận dạng vào ứng dụng của bạn bằng Firebase

  1. Mở Cloud Console rồi chọn dự án Bộ công cụ nhận dạng của bạn.

  2. Trên trang Nhà cung cấp, hãy nhấp vào Application setup details (Chi tiết về thiết lập ứng dụng), chọn thẻ Android (Android), sau đó nhấp vào Get Started in Firebase (Bắt đầu trong Firebase). Trong hộp thoại Thêm Firebase, hãy cung cấp tên gói của ứng dụng và vân tay số của chứng chỉ ký rồi nhấp vào Thêm ứng dụng. Sau đó, tệp cấu hình google-services.json sẽ được tải xuống máy tính của bạn.

  3. Sao chép tệp cấu hình vào thư mục gốc của mô-đun ứng dụng Android. Tệp cấu hình này chứa thông tin về dự án và ứng dụng OAuth của Google.

  4. Trong tệp build.gradle cấp dự án (<var>your-project</var>/build.gradle), hãy chỉ định tên gói của ứng dụng trong phần defaultConfig:

    defaultConfig {
       …..
      applicationId "com.your-app"
    }
    
  5. Ngoài ra, trong tệp build.gradle cấp dự án, hãy thêm một phần phụ thuộc để đưa trình bổ trợ google-services vào:

    buildscript {
     dependencies {
       // Add this line
       classpath 'com.google.gms:google-services:3.0.0'
     }
    }
    
  6. Trong tệp build.gradle cấp ứng dụng (<var>my-project</var>/<var>app-module</var>/build.gradle), hãy thêm dòng sau sau trình bổ trợ Android cho Gradle để bật trình bổ trợ google-services:

    apply plugin: 'com.android.application'
    // Add this line
    apply plugin: 'com.google.gms.google-services'
    

    Trình bổ trợ google-services sử dụng tệp google-services.json để định cấu hình cho ứng dụng của bạn sử dụng Firebase.

  7. Ngoài ra, trong tệp build.gradle cấp ứng dụng, hãy thêm phần phụ thuộc Xác thực Firebase:

    compile 'com.google.firebase:firebase-auth:22.3.1'
    compile 'com.google.android.gms:play-services-auth:21.0.0'
    

Bước 2: Xoá SDK Bộ công cụ nhận dạng

  1. Xoá cấu hình Bộ công cụ nhận dạng khỏi tệp AndroidManifest.xml. Thông tin này có trong tệp google-service.json và được trình bổ trợ google-services tải.
  2. Xoá SDK Bộ công cụ nhận dạng khỏi ứng dụng của bạn.

Bước 3: Thêm FirebaseUI vào ứng dụng của bạn

  1. Thêm tính năng Xác thực FirebaseUI vào ứng dụng.

  2. Trong ứng dụng, hãy thay thế các lệnh gọi đến SDK Bộ công cụ nhận dạng bằng các lệnh gọi đến FirebaseUI.

iOS

Bước 1: Thêm Firebase vào ứng dụng của bạn

  1. Thêm SDK ứng dụng vào ứng dụng bằng cách chạy các lệnh sau:

    $ cd your-project directory
    $ pod init
    $ pod 'Firebase'
    
  2. Mở Cloud Console rồi chọn dự án Bộ công cụ nhận dạng của bạn.

  3. Trên trang Nhà cung cấp, hãy nhấp vào Application setup details (Chi tiết về thiết lập ứng dụng), chọn thẻ iOS rồi nhấp vào Get Started in Firebase (Bắt đầu trong Firebase). Trong hộp thoại Thêm Firebase, hãy cung cấp tên gói và vân tay số cho chứng chỉ ký của ứng dụng rồi nhấp vào Add App (Thêm ứng dụng). Sau đó, tệp cấu hình google-services.json sẽ được tải xuống máy tính. Trong hộp thoại Thêm Firebase, hãy cung cấp mã gói và mã App Store của ứng dụng, sau đó nhấp vào Thêm ứng dụng. Sau đó, tệp cấu hình GoogleService-Info.plist sẽ được tải xuống máy tính của bạn. Nếu bạn có nhiều mã nhận dạng gói trong dự án, thì mỗi mã nhận dạng gói phải được kết nối trong bảng điều khiển của Firebase để có thể có tệp GoogleService-Info.plist riêng.

  4. Sao chép tệp cấu hình vào thư mục gốc của dự án Xcode và thêm tệp đó vào tất cả các mục tiêu.

Bước 2: Xoá SDK Bộ công cụ nhận dạng

  1. Xoá GoogleIdentityToolkit khỏi Podfile của ứng dụng.
  2. Chạy lệnh pod install.

Bước 3: Thêm FirebaseUI vào ứng dụng của bạn

  1. Thêm tính năng Xác thực FirebaseUI vào ứng dụng.

  2. Trong ứng dụng, hãy thay thế các lệnh gọi đến SDK Bộ công cụ nhận dạng bằng các lệnh gọi đến FirebaseUI.