Cấp phép cho tài khoản người dùng

Cấp phép danh tính (hay cấp phép tài khoản) là quá trình thiết lập tài khoản và thiết lập liên kết giữa ba hệ thống và trong một số trường hợp là thiết lập kết nối giữa người dùng và thiết bị của họ.

Trong môi trường doanh nghiệp Android, có tối đa 3 hệ thống chứa thông tin tài khoản:

  • Thư mục người dùng của tổ chức là nguồn thông tin chính thức về người dùng.
  • Bạn (nhà cung cấp giải pháp EMM) phải duy trì ít nhất một thư mục tối thiểu gồm người dùng của tổ chức.
  • Google lưu giữ một số thông tin về Tài khoản Google Play được quản lý và Tài khoản Google để cung cấp dịch vụ quản lý ứng dụng thông qua Google Play.

Tài nguyên Users thể hiện tài khoản liên kết với một doanh nghiệp. Tài khoản có thể dành riêng cho một thiết bị hoặc có thể được liên kết với một cá nhân có nhiều thiết bị (điện thoại di động, máy tính bảng, v.v.) và sử dụng tài khoản trên tất cả các thiết bị đó. Tài khoản có thể chỉ cung cấp quyền truy cập vào Managed Google Play hoặc các dịch vụ khác của Google, tuỳ thuộc vào cách bạn thiết lập doanh nghiệp của khách hàng:

  • Tài khoản Google Play được quản lý mang đến một phương thức minh bạch để doanh nghiệp tự động tạo tài khoản người dùng hoặc thiết bị thông qua nhà cung cấp giải pháp quản lý di động dành cho doanh nghiệp (EMM). Các tài khoản này chỉ cung cấp quyền truy cập vào Managed Google Play.

  • Tài khoản Google là các tài khoản hiện có do Google quản lý và cần phải đồng bộ hoá với các nguồn Tài khoản Google.

Bảng 1: Các trường và phương thức API người dùng

 Tài khoản Google Play được quản lýTài khoản được Google quản lý
Trường
id
loại
accountIdentifierMột giá trị nhận dạng duy nhất mà bạn tạo và liên kết với mã nhận dạng (userId) được trả về từ Google Play. Không được sử dụng thông tin nhận dạng cá nhân (PII).Chưa đặt.
accountTypedeviceAccount, userAccount, tài khoản người dùng, tài khoản thiết bịuserAccount
displayNameTên mà bạn hiển thị trong các mục trên giao diện người dùng, chẳng hạn như trong Google Play. Không được sử dụng thông tin nhận dạng cá nhân.Chưa đặt.
managementTypeemmManagedđược googleManaged, emmManaged
primaryEmailChưa đặt.Trường này là khoá chính để bạn quản lý quá trình đồng bộ hoá từ tài khoản miền do Google quản lý sang tài khoản người dùng trong hệ thống của mình.
Phương thức
xóa
generateAuthenticationToken
generateToken
get
getAvailableProductSet
insert
danh sách
revokeToken
setAvailableProductSet
cập nhật

Tài khoản Google Play được quản lý

Có hai loại Tài khoản Google Play được quản lý:

Tài khoản người dùng
Cấp cho một người dùng quyền truy cập vào Managed Google Play từ tất cả thiết bị của họ. Bạn phải cấp phép tài khoản người dùng cho người dùng của mình – họ không có thông tin đăng nhập để tự thêm Tài khoản Google Play được quản lý.
Để tạo tài khoản người dùng, hãy gọi Users.insert. Đặt loại tài khoản thành userType và đặt accountIdentifier để tham chiếu riêng đến người dùng trong doanh nghiệp.
Phương pháp hay nhất: Đừng sử dụng cùng một tài khoản trên hơn 10 thiết bị.
Tài khoản thiết bị
Cấp quyền truy cập vào Managed Google Play từ một thiết bị. Nếu đã cấp mã thông báo xác thực cho tài khoản thiết bị, thì yêu cầu mới cho mã thông báo xác thực cho tài khoản thiết bị đó sẽ huỷ kích hoạt mã thông báo trước đó. Mỗi thiết bị phải có giấy phép riêng cho ứng dụng.
Để tạo tài khoản thiết bị, hãy gọi Users.insert và đặt loại tài khoản thành deviceType.

Bạn tạo và duy trì liên kết giữa danh tính người dùng hoặc thiết bị và Tài khoản Google Play được quản lý tương ứng, đồng thời bạn quản lý các tài khoản này trong suốt vòng đời của chúng. Tổ chức này không cần quyền kiểm soát trực tiếp đối với các Tài khoản Google Play được quản lý này, vì các tài khoản này chỉ tồn tại để quản lý ứng dụng.

Các yêu cầu đối với bảng điều khiển và máy chủ EMM

Tài khoản Google Play được quản lý được tạo theo yêu cầu, theo phương thức lập trình, bằng API Google Play EMM và API khung Android trên các thành phần của giải pháp EMM (bảng điều khiển EMM, máy chủ EMM và DPC). Các thành phần này tương tác trong thời gian chạy để tạo tài khoản người dùng và cấp phép hồ sơ công việc trên thiết bị mục tiêu. Bảng điều khiển hoặc máy chủ EMM của bạn phải:

  • Cung cấp cơ chế tạo giá trị nhận dạng tài khoản ẩn danh riêng biệt (trường accountIdentifier) để sử dụng trong lệnh gọi đến Users.insert. Ví dụ: bạn có thể sử dụng một số giá trị nội bộ cho người dùng ("sanjeev237389") hoặc số thẻ tài sản khó hiểu ("tài sản#44448"). Tránh sử dụng thông tin nhận dạng cá nhân (PII) cho mã nhận dạng tài khoản.

  • Lưu trữ liên kết giữa userId (được trả về từ lệnh gọi insert) và accountIdentifier mà bạn chọn.

Để biết các yêu cầu về DPC, hãy xem bài viết Tạo trình kiểm soát chính sách thiết bị.

Tạo tài khoản người dùng Managed Google Play

  1. Người dùng đăng nhập vào DPC của bạn bằng thông tin xác thực (thường) của công ty.
  2. DPC yêu cầu thông tin chi tiết về người dùng từ máy chủ hoặc bảng điều khiển EMM. Giả sử hệ thống của bạn không xác định người dùng:
    1. Gửi yêu cầu về Tài khoản Google Play được quản lý mới bằng cách gọi Users.insert với các giá trị cho accountIdentifier, displayNameaccountType mới.
      • Hệ thống của bạn phải tạo accountIdentifier. Mã nhận dạng tài khoản phải là một giá trị duy nhất trên hệ thống của bạn. Không được sử dụng PII cho mã nhận dạng tài khoản.
      • displayName xuất hiện trong trình chuyển đổi tài khoản của Cửa hàng Google Play và phải có ý nghĩa nào đó đối với người dùng (chứ không phải PII về người dùng). Ví dụ: tên có thể bao gồm tên tổ chức hoặc tên chung liên quan đến EMM.
      • Đặt accountType thành userAccount hoặc deviceAccount. userAccount có thể dùng trên nhiều thiết bị, còn deviceAccount dành riêng cho một thiết bị. accountType được chỉ định có thể là deviceType hoặc userType.
      • Đặt managementType thành emmManaged.
    2. Google Play xử lý yêu cầu, tạo tài khoản và trả về một userId.
    3. Lưu trữ liên kết giữa accountIdentifieruserId trong kho dữ liệu của bạn.
    4. Gọi Users.generateAuthenticationToken bằng userIdenterpriseId. Google Play trả về một mã thông báo xác thực chỉ sử dụng được một lần và phải được sử dụng trong vòng vài phút.
    5. Chuyển tiếp mã xác thực tới DPC của bạn một cách an toàn.
  3. DPC cấp hồ sơ công việc và thêm tài khoản vào hồ sơ công việc hoặc thiết bị.
  4. Người dùng có thể truy cập Managed Google Play trong hồ sơ công việc hoặc thiết bị.

Tài khoản quản trị viên

Khi quản trị viên tạo một doanh nghiệp có Tài khoản Google Play được quản lý, thì Tài khoản Google mà họ sử dụng không thể là tài khoản G Suite. Tài khoản mà họ sử dụng sẽ trở thành chủ sở hữu của doanh nghiệp và chủ sở hữu có thể thêm nhiều chủ sở hữu và quản trị viên khác trong Managed Google Play Console.

Cả Enterprises.getEnterprises.completeSignup đều trả về danh sách địa chỉ email của quản trị viên liên kết với doanh nghiệp (chỉ dành cho doanh nghiệp có Tài khoản Google Play được quản lý).

Quản lý vòng đời tài khoản

Trong quá trình triển khai Tài khoản Google Play được quản lý, bạn chịu trách nhiệm về vòng đời của tài khoản người dùng và thiết bị, tức là bạn tạo, cập nhật và xoá những tài khoản này.

Bạn tạo tài khoản trong quá trình cấp phép thiết bị, đây là một quy trình bao gồm cả ứng dụngDPC và bảng điều khiển EMM. Để biết hướng dẫn, hãy xem phương thức Managed Google Play Accounts (Tài khoản Google Play được quản lý).

Để thay đổi thông tin của tài khoản, hãy gọi hàm Users.update.

Để xoá một tài khoản, hãy gọi hàm Users.delete.

Quản trị viên không thể xoá tài khoản cá nhân nhưng có thể xoá một doanh nghiệp có Tài khoản Google Play được quản lý. Khi họ thực hiện thao tác này, cuối cùng, thiết bị và tài khoản người dùng liên kết với doanh nghiệp sẽ bị xoá, như mô tả trong bài viết Huỷ đăng ký, đăng ký lại, xoá.

Hết hạn tài khoản

Đôi khi, tài khoản hoặc mã thông báo của tài khoản hết hạn. Điều này có thể xảy ra vì một số lý do:

  • Mã thông báo xác thực mà bạn lấy để thêm tài khoản vào thiết bị đã hết hạn.
  • Tài khoản hoặc doanh nghiệp đã bị xoá.
  • Đối với các tài khoản thiết bị, tài khoản đã được thêm vào một thiết bị mới và do đó bị vô hiệu hoá trên thiết bị cũ.
  • Tính năng kiểm tra lạm dụng tự động được kích hoạt.

Trong hầu hết các trường hợp (trừ phi EMM cố ý di chuyển tài khoản thiết bị sang thiết bị mới), cách tốt nhất là sử dụng API Play EMM để yêu cầu mã mới từ máy chủ EMM, lưu ý trạng thái của tài khoản và doanh nghiệp cũng như mọi lỗi bị trả về, sau đó có biện pháp xử lý thích hợp đối với thiết bị. Ví dụ: làm mới mã thông báo hoặc nếu không khôi phục được lỗi, hãy đặt lại hoặc huỷ đăng ký thiết bị.

Dịch vụ Google Play phiên bản 9.0.00 thông báo cho DPC rằng tài khoản đã hết hạn bằng thao tác truyền tin:

  1. Khi Tài khoản Google Play được quản lý bị vô hiệu hoá trên một thiết bị, DPC sẽ nhận được một thông báo bằng thao tác sau:

    com.google.android.gms.auth.ACCOUNT_REAUTH_REQUIRED

    Ý định truyền tin chứa phần phụ Parcelable có tên account. Đây là đối tượng Account của tài khoản không hợp lệ.

  2. DPC sẽ kiểm tra Account#name với máy chủ EMM để xác định tài khoản đã hết hiệu lực.

  3. DPC yêu cầu thông tin xác thực mới hoặc một tài khoản mới, theo cùng một quy trình dùng để cấp phép thiết bị ban đầu.


Tài khoản Google

Đối với những tổ chức sử dụng Tài khoản Google, tài khoản người dùng trong giải pháp EMMWB sẽ phản ánh những tài khoản người dùng hiện có đã liên kết với một dịch vụ khác của Google (ví dụ: G Suite). Những tài khoản này là googleManaged (Bảng 1) vì các dịch vụ phụ trợ của Google là nguồn tạo và cung cấp thông tin về tài khoản.

Là EMM, bạn có thể cung cấp các cơ chế trong bảng điều khiển của mình để hỗ trợ việc tạo và đồng bộ hoá liên tục các tài khoản người dùng được lưu giữ trong hệ thống với các nguồn tài khoản miền Google của họ bằng các công cụ như Google Cloud Directory Sync (GCDS)Google Admin SDK Directory API. để biết thông tin tổng quan về các phương pháp khác nhau.) Để có thể cấp phép tài khoản người dùng trên mọi thiết bị của người dùng trong bối cảnh hồ sơ công việc, mô hình danh tính miền do Google quản lý yêu cầu phải có tài khoản người dùng trong bối cảnh áp dụng giải pháp của bạn (bảng điều khiển EMM, máy chủ EMM, có thể là trong kho dữ liệu).

Trong quá trình cấp phép danh tính, miền do Google quản lý của tổ chức sẽ được điền bằng tài khoản người dùng. Trong một số trường hợp, danh tính trực tuyến hiện có của người dùng (ví dụ: tài khoản Microsoft Exchange của họ) được đồng bộ hoá với Tài khoản Google của họ.

Sau quá trình đồng bộ hoá ban đầu, nhưng trước khi phân phối ứng dụng đến thiết bị của người dùng, người dùng phải kích hoạt Tài khoản Google của họ, như mô tả trong phần Kích hoạt tài khoản trên thiết bị. Thao tác kích hoạt này cho phép thiết bị truy cập Managed Google Play.

Đồng bộ hóa tài khoản khách hàng

Trong một lần triển khai Tài khoản Google, tổ chức có thể sử dụng công cụ GCDS để đồng bộ hoá dữ liệu trong miền G Suite của họ với dữ liệu trong thư mục LDAP. Ngoài ra, bạn có thể sử dụng GCDS để làm việc này thay mặt cho tổ chức, nếu tổ chức cấp cho bạn quyền truy cập.

Công cụ GCDS gọi Google Directory API và đồng bộ hoá tên người dùng nhưng không đồng bộ hoá mật khẩu.

Nếu tổ chức sử dụng Microsoft Active Directory và muốn đồng bộ hoá mật khẩu G Suite của người dùng với mật khẩu Active Directory của họ, thì họ hoặc bạn có thể sử dụng công cụ Đồng bộ hoá mật khẩu G Suite (GSPS) với GCDS.

Để biết hướng dẫn về GCDS dành cho quản trị viên, hãy xem phần Chuẩn bị miền G Suite của bạn để đồng bộ hoá.

API Google Directory

Trong quá trình triển khai Tài khoản Google, bạn có thể sử dụng Google Directory API để đồng bộ hoá các thư mục, mật khẩu đang hoạt động hoặc cả hai:

  • Sử dụng API Thư mục để chỉ đồng bộ hoá thư mục. Nếu có quyền truy cập chỉ đọc vào miền Google được quản lý của tổ chức, bạn có thể sử dụng Google Directory API để nhận thông tin Tài khoản Google, chẳng hạn như tên người dùng (chứ không phải mật khẩu) từ Google. Vì bạn không thể ghi bất kỳ dữ liệu nào vào Tài khoản Google của người dùng, nên tổ chức này hoàn toàn chịu trách nhiệm về vòng đời tài khoản.

    Tình huống 1Các tình huống xác thực SSO dựa trên SAML sẽ mô tả đầy đủ hơn về tình huống này.

    Để biết thông tin về cách sử dụng API thư mục theo cách này, hãy xem phần Truy xuất tất cả người dùng tài khoản trong tài liệu về API thư mục.

  • Sử dụng API Thư mục để đồng bộ hoá thư mục và không bắt buộc phải đồng bộ hoá mật khẩu. Nếu có quyền đọc-ghi đối với miền do Google quản lý của tổ chức, bạn có thể sử dụng Google Directory API để lấy tên người dùng, mật khẩu và các thông tin khác về Tài khoản Google. Bạn có thể cập nhật và đồng bộ hoá thông tin này với cơ sở dữ liệu của riêng mình. Bạn có thể chịu toàn bộ hoặc một phần trách nhiệm trong vòng đời của tài khoản, tuỳ thuộc vào giải pháp mà bạn cung cấp cho khách hàng.

    Tình huống 2 mô tả đầy đủ hơn về tình huống này.

    Để biết thêm về cách sử dụng API Thư mục để quản lý thông tin tài khoản người dùng, vui lòng xem hướng dẫn dành cho nhà phát triển về API Thư mục: Tài khoản người dùng.

Các trường hợp liên quan đến Tài khoản Google

Dưới đây là một số trường hợp cấp phép danh tính điển hình cho Tài khoản Google.

Trường hợp 1: Khách hàng chịu trách nhiệm về vòng đời của tài khoản

Sử dụng Directory API (có quyền chỉ có thể đọc) và GCDS

Trong trường hợp này, khách hàng của bạn sẽ tạo và duy trì Tài khoản Google cho người dùng.

Bạn nhận thông tin tài khoản người dùng từ thư mục LDAP của tổ chức và bạn liên kết thông tin này với dữ liệu Tài khoản Google mà bạn nhận được từ Google thông qua API Thư mục của Google.

Tổ chức này hoàn toàn chịu trách nhiệm về vòng đời của tài khoản. Ví dụ: khi một Tài khoản Google mới được tạo, tổ chức sẽ thêm người dùng vào thư mục LDAP. Vào lần tiếp theo bạn đồng bộ hoá cơ sở dữ liệu của mình vào thư mục LDAP, cơ sở dữ liệu của bạn sẽ nhận được thông tin về người dùng mới này.

Trong tình huống này:

  • Bạn chỉ có quyền đọc đối với Tài khoản Google.
  • Cơ sở dữ liệu của bạn lấy tên Tài khoản Google, nhưng không có tên người dùng hoặc mật khẩu LDAP.
  • Bạn sử dụng Google Directory API để lấy thông tin cơ bản về tài khoản của người dùng của khách hàng. (Thông tin có sẵn cho bạn là thông tin không thể ghi mà yêu cầu Users.get trả về). Bạn sử dụng thông tin này để xác minh rằng Tài khoản Google của người dùng tồn tại và người dùng có thể xác thực các thiết bị của họ.
  • Khách hàng của bạn sử dụng công cụ GCDS để đồng bộ hoá một chiều nhằm điền sẵn Tài khoản Google của người dùng. (Tổ chức này có thể cũng sử dụng GCDS cho quá trình đồng bộ hoá đang diễn ra của riêng họ sau khi quá trình cấp phép danh tính hoàn tất.) Tổ chức cũng có thể sử dụng công cụ GSPS để đồng bộ hoá không chỉ tên người dùng mà còn cả mật khẩu (không bắt buộc).

Trường hợp 2: EMM chịu trách nhiệm về vòng đời tài khoản

Sử dụng API thư mục với quyền đọc-ghi

Trong trường hợp này, bạn xử lý quy trình tạo Tài khoản Google thay mặt cho khách hàng của mình và bạn chịu trách nhiệm cho vòng đời tài khoản của người dùng.

Ví dụ: khi thông tin người dùng trong thư mục LDAP của tổ chức thay đổi, bạn có trách nhiệm cập nhật Tài khoản Google của người dùng. GCDS không được sử dụng trong trường hợp này.

Trong tình huống này:

  • Bạn có quyền đọc-ghi đối với Tài khoản Google.
  • Cơ sở dữ liệu của bạn lấy tên Tài khoản Google, tên người dùng LDAP (và tuỳ chọn có thể băm mật khẩu).
  • Bạn sử dụng Google Directory API thay mặt cho khách hàng của mình để đọc và ghi thông tin tài khoản cho người dùng của tổ chức. (Thông tin có sẵn cho bạn là thông tin không thể ghi được yêu cầu Users.get trả về). Bạn sử dụng thông tin này để xác minh rằng Tài khoản Google của người dùng tồn tại và người dùng có thể xác thực các thiết bị của họ.
  • Công cụ GCDS không được sử dụng.

Các trường hợp xác thực SSO dựa trên SAML

Trong quá trình triển khai Tài khoản Google, bạn hoặc khách hàng của bạn có thể sử dụng Ngôn ngữ đánh dấu xác nhận bảo mật (SAML) với nhà cung cấp danh tính (IdP) để xác thực Tài khoản Google liên kết với từng người dùng. Bạn sử dụng tên Tài khoản Google làm phương thức xác minh rằng có Tài khoản Google của người dùng. Tài khoản này cần thiết cho quy trình xác thực người dùng khi người dùng đăng nhập vào thiết bị của họ. Ví dụ: có thể sử dụng SAML trong Trường hợp 2. Để biết thông tin chi tiết về cách thiết lập tính năng này, hãy xem bài viết Thiết lập tính năng Đăng nhập một lần (SSO) cho tài khoản G Suite.

Kích hoạt tài khoản trên thiết bị

Để các ứng dụng được phân phối đến thiết bị của người dùng thông qua Managed Google Play, người dùng phải đăng nhập vào thiết bị trong quá trình cấp phép thiết bị:

  • Trong phần cấp phép thiết bị cho Tài khoản Google Play được quản lý, DPC sẽ hướng dẫn người dùng đăng nhập bằng thông tin xác thực mà bảng điều khiển EMM chấp nhận, thường là thông tin xác thực email của công ty.
  • Trong quá trình triển khai Tài khoản Google, DPC của bạn sẽ hướng dẫn người dùng nhập thông tin đăng nhập Tài khoản Google. Thông thường, những thông tin xác thực này khớp với thông tin đăng nhập mà người dùng đăng nhập vào miền công ty của họ khi được đồng bộ hoá với GCDS hoặc GSPS, hoặc khi một tổ chức sử dụng IdP để xác thực. Thao tác này sẽ kích hoạt Tài khoản Google của người dùng, tạo một mã thiết bị duy nhất và liên kết danh tính Tài khoản Google của người dùng với mã thiết bị của họ.