API cấp phép chứng chỉ

API Cấp chứng chỉ cho phép tích hợp Tổ chức phát hành chứng chỉ với tính năng cấp chứng chỉ máy khách ChromeOS.

Quản trị viên ChromeOS có thể định cấu hình thiết bị ChromeOS hoặc người dùng ChromeOS để yêu cầu chứng chỉ ứng dụng từ một Tổ chức phát hành chứng chỉ bên ngoài. Tổ chức phát hành chứng chỉ tương tác với API Cấp phát chứng chỉ thông qua Trình chuyển đổi cấp phát chứng chỉ (ví dụ: Trình kết nối chứng chỉ Google Cloud (GCCC)). Mỗi Trình chuyển đổi cấp phép chứng chỉ sẽ nhận được thông báo về các yêu cầu cấp phép chứng chỉ mới thông qua Pub/Sub, sau đó sử dụng API Cấp phép chứng chỉ để tương tác với thiết bị ChromeOS hoặc người dùng ChromeOS yêu cầu cấp chứng chỉ.

Dịch vụ này hoạt động với các khái niệm chính sau:

  • Chứng chỉ ứng dụng là chứng chỉ kỹ thuật số X.509 được cấp cho một thiết bị ChromeOS hoặc người dùng ChromeOS. Cặp khoá được tạo trên thiết bị và khoá riêng tư không bao giờ rời khỏi thiết bị.
  • Quy trình cấp chứng chỉ (được biểu thị bằng tài nguyên CertificateProvisioningProcess) mô tả quy trình cấp chứng chỉ máy khách. Ứng dụng yêu cầu chứng chỉ là một thiết bị ChromeOS hoặc người dùng ChromeOS.
  • Hồ sơ cấp phép chứng chỉ mô tả cấu hình của quản trị viên cho chứng chỉ máy khách. Các ứng dụng được cấp một chứng chỉ cho mỗi hồ sơ áp dụng cho ứng dụng đó.

Quy trình chung của quy trình cấp phép chứng chỉ:

  • Sau khi tìm nạp hồ sơ chứng chỉ máy khách, ứng dụng sẽ khởi chạy quy trình cấp chứng chỉ liên kết với tài nguyên cấp chứng chỉ.
  • Mỗi Trình chuyển đổi cấp phép chứng chỉ được đăng ký theo chủ đề Pub/Sub liên quan sẽ nhận được thông báo về quy trình cấp phép chứng chỉ mới. Thông báo Pub/Sub chứa thông báo proto CertificateProvisioningPubsubNotification truyền tải mã nhận dạng duy nhất của quy trình cấp chứng chỉ.
  • Mỗi Bộ chuyển đổi cấp phép chứng chỉ có thể truy cập vào tài nguyên quy trình cấp phép chứng chỉ, hãy xem phương thức get.
  • Nhiều thực thể Bộ chuyển đổi có thể chạy song song và có thể cố gắng xác nhận cùng một quy trình cấp chứng chỉ cùng một lúc, hãy xem phương thức xác nhận. Tuy nhiên, phương thức xác nhận quyền sở hữu sẽ chỉ thành công đối với một thực thể Adapter duy nhất, sau đó cũng phải xử lý các bước còn lại của quy trình cấp chứng chỉ.
  • Bộ chuyển đổi cấp chứng chỉ có thể yêu cầu chữ ký mã hoá được tạo bằng khoá riêng tư của ứng dụng, hãy xem phương thức signData. Phương thức này trả về một Thao tác chạy trong thời gian dài.
  • Trình chuyển đổi cấp phép chứng chỉ định kỳ nhận trạng thái của thao tác chạy trong thời gian dài, hãy xem phương thức get.
  • Trình chuyển đổi cấp phép chứng chỉ sẽ tải chứng chỉ lên cho quy trình cấp phép chứng chỉ, hãy xem phương thức uploadCertificate. Ứng dụng ChromeOS sẽ nhập chứng chỉ này.
  • Trong toàn bộ quá trình cấp chứng chỉ, Bộ chuyển đổi có thể đánh dấu quá trình cấp chứng chỉ là không thành công, hãy xem phương thức setFailure. Trang cài đặt chứng chỉ trên ứng dụng ChromeOS hiển thị thông báo lỗi được cung cấp. Ứng dụng sẽ thử lại quy trình cấp chứng chỉ vào một số trường hợp nhất định, chẳng hạn như sau 24 giờ hoặc sau khi khởi động lại thiết bị.

Định dạng thông báo Pub/Sub ban đầu

Thông báo Pub/Sub ban đầu được gửi đến Trình chuyển đổi cấp phép chứng chỉ để thông báo cho họ về quy trình cấp phép chứng chỉ mới tuân theo định dạng sau:

message CertificateProvisioningProcessCreatedEventData {
  // Unique ID of the certificate provisioning process.
  string certificate_provisioning_process_id = 1;

  // The customer ID to which the client of the certificate provisioning process
  // belongs.
  string customer_id = 2;
}

// Content of the pubsub message that is sent to the adapter to notify it about
// a new event that should be handled.
message CertificateProvisioningPubsubNotification {
  oneof event {
    // Event data of the certificate provisioning process that was created.
    CertificateProvisioningProcessCreatedEventData
        certificate_provisioning_process_created_event_data = 1;
  }
}

Tổng quan nhanh về các phương thức API

URL tương ứng với https://chromemanagement.googleapis.com/v1/customers/{customer_id}

Mô tả URL tương đối Phương thức HTTP
Nhận quy trình cấp chứng chỉ /certificateProvisioningProcess/{certificate_provisioning_process_id} XEM
Xác nhận quyền sở hữu quy trình cấp chứng chỉ /certificateProvisioningProcess/{certificate_provisioning_process_id}:claim ĐĂNG
Yêu cầu chữ ký mã hoá /certificateProvisioningProcess/{certificate_provisioning_process_id}:signData ĐĂNG
Tải chứng chỉ lên /certificateProvisioningProcess/{certificate_provisioning_process_id}:uploadCertificate ĐĂNG
Đánh dấu quy trình cấp chứng chỉ là không thành công /certificateProvisioningProcess/{certificate_provisioning_process_id}:setFailure ĐĂNG
Thao tác dài hạn để lấy dữ liệu chữ ký /certificateProvisioningProcess/{certificate_provisioning_process_id}/operations/{operation_id} XEM

Xem mã mẫu để biết các yêu cầu và phản hồi mẫu.

Phạm vi API

API Quản lý Chrome yêu cầu phạm vi OAuth sau:

https://www.googleapis.com/auth/chrome.management.certprov.provisioningprocess

Để biết thêm thông tin, hãy xem bài viết Tổng quan về quy trình xác thực.