Các phiên bản hỗ trợ tính năng này: Frontline Plus; Enterprise Plus; Education Standard và Education Plus. So sánh phiên bản của bạn
Để sử dụng S/MIME với tính năng mã hoá phía máy khách (CSE) của Google Workspace cho Gmail, bạn cần bật API Gmail và cấp quyền truy cập vào toàn bộ tổ chức của mình. Sau đó, đối với mỗi người dùng, bạn cần sử dụng API Gmail để tải chứng chỉ S/MIME (Phần mở rộng thư Internet an toàn/đa mục đích) (khoá công khai) và siêu dữ liệu khoá riêng tư lên Gmail. Nếu đang sử dụng dịch vụ khoá mã hoá, bạn cũng cần mã hoá (hoặc "gói") siêu dữ liệu khoá riêng tư của người dùng bằng dịch vụ khoá của mình.
Bất cứ lúc nào, bạn cũng có thể chuyển sang một dịch vụ khoá khác bằng cách tải chứng chỉ S/MIME mới và siêu dữ liệu khoá riêng tư đã được mã hoá bằng dịch vụ mới lên.
Yêu cầu
Để hoàn tất các bước định cấu hình S/MIME cho người dùng, bạn cần:
- Quyền quản trị viên cấp cao đối với Tài khoản Google của tổ chức. Bạn cần cung cấp quyền truy cập trên toàn miền vào API Gmail.
- Quyền truy cập vào các công cụ của dịch vụ khoá mã hoá của tổ chức hoặc nhân viên hỗ trợ của họ.
- Kinh nghiệm làm việc với API và tập lệnh Python.
Giới thiệu về S/MIME
S/MIME là một giao thức tiêu chuẩn trong ngành được chấp nhận rộng rãi để ký và mã hoá thư email bằng kỹ thuật số nhằm đảm bảo tính toàn vẹn và bảo mật của thư. Tính năng CSE của Gmail dựa trên tiêu chuẩn S/MIME 3.2 của IETF để gửi và nhận dữ liệu MIME bảo mật. S/MIME yêu cầu người gửi và người nhận email phải có chứng chỉ X.509 được Gmail tin cậy.
Lưu ý: Ngoài ra, bạn có thể sử dụng S/MIME mà không cần thêm lớp mã hoá và quyền riêng tư mà CSE cung cấp. Chỉ sử dụng phương án thay thế này nếu không cần ngăn máy chủ của Google giải mã dữ liệu của bạn bằng CSE. Để biết thông tin chi tiết, hãy chuyển đến phần Bật S/MIME được lưu trữ để mã hoá thư.
Trước khi bắt đầu
Hãy đảm bảo bạn đã hoàn tất các bước sau:
- Chọn một dịch vụ khoá.
- Kết nối với nhà cung cấp danh tính (IdP).
- Thiết lập dịch vụ khoá bên ngoài hoặc tính năng mã hoá bằng khoá phần cứng.
Chỉ định dịch vụ khoá hoặc tính năng mã hoá bằng khoá phần cứng cho các đơn vị tổ chức hoặc nhóm.
Nếu bạn đang sử dụng nhiều dịch vụ khoá, hãy đảm bảo rằng các dịch vụ đó được chỉ định cho các đơn vị tổ chức hoặc nhóm cấu hình thích hợp.
Thiết lập API Gmail
Lưu ý: Bạn cần có kiến thức về lập trình để sử dụng các API.
Bước 1: Bật API Gmail
- Tạo một dự án GCP mới. Để biết thông tin chi tiết, hãy chuyển đến phần Tạo và quản lý dự án.
Lưu ý về mã dự án: Bạn sẽ sử dụng mã này để cấp quyền truy cập trên toàn miền cho API.
- Chuyển đến Google API Console rồi bật API Gmail cho dự án mới. Để biết thông tin chi tiết, hãy chuyển đến phần Bật API trong dự án Google Cloud.
Bước 2: Tạo tài khoản dịch vụ trên toàn miền
- Trong Google Cloud Console, hãy chuyển đến trang Tài khoản dịch vụ rồi tạo tài khoản dịch vụ trên toàn miền. Để biết thông tin chi tiết, hãy chuyển đến phần Tạo và quản lý tài khoản dịch vụ.
- Tạo khoá riêng tư của tài khoản dịch vụ rồi lưu khoá vào một tệp JSON trên hệ thống cục bộ của bạn, chẳng hạn như
svc_acct_creds.json. Tệp này chứa thông tin đăng nhập mà bạn sẽ sử dụng khi thiết lập Gmail cho người dùng. Để biết thông tin chi tiết, hãy chuyển đến phần Tạo và quản lý khoá tài khoản dịch vụ.
Bước 3: Cấp quyền truy cập trên toàn miền cho API Gmail
Trong bước này, bạn sẽ sử dụng tài khoản dịch vụ mà bạn đã tạo để cấp quyền chỉnh sửa API Gmail cho tất cả người dùng.
- Làm theo hướng dẫn trong phần Kiểm soát quyền truy cập API bằng tính năng uỷ quyền trên toàn miền.
- Nhập thông tin sau khi được nhắc:
Mã ứng dụng: Mã ứng dụng của tài khoản dịch vụ được tạo trong Bước 2 ở trên.
Phạm vi OAuth:
gmail.settings.readonlyvà một trong haigmail.settings.basichoặcgmail.settings.sharing
Bật tính năng CSE của Gmail cho người dùng
Bật tính năng CSE cho Gmail cho các đơn vị tổ chức hoặc nhóm. Để biết thông tin chi tiết, hãy chuyển đến phần Bật hoặc tắt tính năng mã hoá phía máy khách.
Lưu ý: Đối với các đơn vị tổ chức, bạn có thể đặt tất cả email (soạn, trả lời và chuyển tiếp) được mã hoá theo mặc định. Người dùng vẫn có thể tắt tính năng mã hoá nếu cần. Yêu cầu phải có tiện ích bổ sung Quyền kiểm soát có đảm bảo hoặc Quyền kiểm soát có đảm bảo Plus.
Thiết lập chứng chỉ S/MIME CSE cho người dùng
Sau khi thiết lập API Gmail và bật tính năng CSE của Gmail cho người dùng trong Bảng điều khiển dành cho quản trị viên, bạn có thể thiết lập chứng chỉ S/MIME CSE và siêu dữ liệu khoá riêng tư cho người dùng.
Bước 1: Chuẩn bị chứng chỉ S/MIME và siêu dữ liệu khoá riêng tư
Đối với mỗi người dùng sẽ sử dụng tính năng CSE của Gmail để gửi hoặc nhận email:
Sử dụng cơ quan cấp chứng chỉ (CA) để tạo cặp khoá công khai/riêng tư S/MIME có chuỗi chứng chỉ. Chứng chỉ S/MIME leaf phải bao gồm địa chỉ Gmail chính của người dùng dưới dạng tên chủ đề hoặc chủ đề tiện ích SAN.
Bạn có thể thực hiện một trong những thao tác sau:
- Sử dụng chứng chỉ gốc CA được Google tin cậy: Để xem danh sách chứng chỉ gốc, hãy chuyển đến phần Chứng chỉ CA được Gmail tin cậy cho S/MIME.
- Sử dụng CA không được Google tin cậy: Ví dụ: để sử dụng CA của riêng bạn, bạn có thể thêm chứng chỉ gốc của CA đó trong Bảng điều khiển dành cho quản trị viên. Để biết thông tin chi tiết, hãy chuyển đến phần Quản lý chứng chỉ đáng tin cậy cho S/MIME.
Lưu ý: Nếu bạn sử dụng CA không được Google tin cậy và người dùng sẽ gửi email được mã hóa phía máy khách bên ngoài tổ chức của bạn, thì người nhận cũng phải tin cậy CA đó.
Bước 2: Gói chứng chỉ và siêu dữ liệu khoá riêng tư
Sử dụng dịch vụ mã hoá khoá của bạn để mã hoá hoặc "gói" siêu dữ liệu của khoá riêng tư S/MIME. Liên hệ với dịch vụ khoá của bạn để thực hiện việc này hoặc làm theo hướng dẫn mà họ cung cấp.
Nếu bạn đang sử dụng tính năng mã hoá bằng khoá phần cứng – Hãy đảm bảo bạn bỏ qua bước này và không gói siêu dữ liệu khoá riêng tư cho bất kỳ người dùng nào sẽ sử dụng tính năng mã hoá bằng khoá phần cứng. Trong trường hợp này, bạn không cần gói siêu dữ liệu vì khoá riêng tư của người dùng cho Gmail nằm trên thẻ thông minh của họ. Yêu cầu phải có tiện ích bổ sung Quyền kiểm soát có đảm bảo hoặc Quyền kiểm soát có đảm bảo Plus.
Bước 3: Tải chứng chỉ S/MIME và siêu dữ liệu khoá riêng tư của người dùng lên Gmail
Sử dụng API Gmail để tải chuỗi chứng chỉ S/MIME khoá công khai và siêu dữ liệu khoá riêng tư của mỗi người dùng lên Gmail, đồng thời đặt các chứng chỉ và siêu dữ liệu này làm khoá ưu tiên cho người dùng bằng cách tạo danh tính.
Lưu ý: Bạn cần sử dụng API Gmail để tải chứng chỉ lên, không phải ứng dụng Gmail. Ngoài ra, xin lưu ý rằng bạn sẽ không thể tải chứng chỉ lên từ ứng dụng Gmail khi bật tính năng CSE cho Gmail.
Hoàn tất các bước sau cho mỗi người dùng bằng tệp khoá riêng tư mà bạn đã tải xuống khi tạo tài khoản dịch vụ trên toàn miền để xác thực:
- Tải chuỗi chứng chỉ và siêu dữ liệu khoá riêng tư lên bằng lệnh gọi API Gmail
keypairs.create. - Bật cặp khoá cho địa chỉ email chính của người dùng bằng lệnh gọi API Gmail
identities.create.Lệnh gọi
identities.createyêu cầu mã cặp khoá được trả về trong nội dung phản hồi của lệnh gọikeypairs.create.Lưu ý: Bật cặp khoá cho địa chỉ email của người dùng:
- Tạo danh tính CSE được uỷ quyền gửi email từ tài khoản của người dùng.
- Định cấu hình Gmail để sử dụng siêu dữ liệu khoá riêng tư nhằm ký thư CSE gửi đi.
- Phát hành chứng chỉ vào kho lưu trữ dùng chung trên toàn miền để những người dùng CSE khác trong tổ chức của bạn có thể mã hoá thư gửi cho người dùng này.
Để hoàn tất các bước này, hãy sử dụng một tập lệnh giao tiếp với API Gmail. Bạn có thể thực hiện một trong những thao tác sau:
- Viết tập lệnh của riêng bạn.
- Sử dụng tập lệnh mẫu Python mà Google cung cấp. Để biết hướng dẫn, hãy chuyển đến phần Sử dụng tập lệnh Python của Google để tải chứng chỉ và khoá được gói của người dùng lên Gmail sau trên trang này.
Lưu ý: Tập lệnh này chỉ áp dụng cho những người dùng sẽ sử dụng dịch vụ khoá để mã hoá nội dung Gmail. Đối với bất kỳ người dùng nào sẽ sử dụng tính năng mã hoá bằng khoá phần cứng, bạn cần tạo một tập lệnh khác để tải siêu dữ liệu khoá riêng tư chưa được gói của họ lên.
Sau khi bạn tải chứng chỉ lên, có thể mất đến 24 giờ để chứng chỉ xuất hiện trong Gmail, mặc dù thường thì quá trình này diễn ra nhanh hơn nhiều.
(Không bắt buộc) Sử dụng tập lệnh mẫu Python của Google để tải chứng chỉ và khoá riêng tư được gói của người dùng lên Gmail
Để hoàn tất Bước 3 ở trên, bạn có thể sử dụng tập lệnh Python mà Google cung cấp thay vì viết tập lệnh của riêng mình.
Lưu ý: Tập lệnh này yêu cầu 3 phạm vi mà bạn có thể sử dụng để cấp quyền truy cập trên toàn miền cho API Gmail (được liệt kê trước đó trên trang này): gmail.settings.readonly, gmail.settings.basic, và gmail.settings.sharing. Để sử dụng tập lệnh, bạn có thể bật cả 3 phạm vi hoặc xoá phạm vi mà bạn không sử dụng khỏi tập lệnh.
Tải tập lệnh xuống
Tải gói tập lệnh Python (.zip) xuống máy tính (Mac, Linux hoặc Windows) rồi trích xuất các tệp vào thư mục làm việc.
Tạo môi trường ảo và cài đặt mô-đun
Sử dụng dòng lệnh từ thư mục làm việc, hãy nhập các lệnh sau:
Gọi tập lệnh
Tải chứng chỉ và khoá của người dùng lên
Bước 1: Tạo thư mục để lưu trữ tất cả khoá riêng tư được gói
- Ví dụ: bạn có thể tạo thư mục
$root/wrapped_keys. - Tên tệp cho mỗi khoá riêng tư được gói phải là địa chỉ email đầy đủ của người dùng có đuôi
.wrap. Ví dụ:$root/wrapped_keys/user1@example.com.wrap - Đảm bảo tệp khoá riêng tư được gói có đối tượng JSON với 2 trường bắt buộc:
Bước 2: Tạo thư mục để lưu trữ tất cả chứng chỉ
- Chứng chỉ cần ở định dạng P7 PEM. Vì vậy, bạn có thể tạo thư mục
$root/p7pem_certs. - Đảm bảo tệp chứng chỉ chứa toàn bộ chuỗi đến cơ quan cấp chứng chỉ (CA) gốc.
- Tên tệp cho mỗi chứng chỉ phải là địa chỉ email đầy đủ của người dùng có đuôi
.p7pem. Ví dụ:$root/p7pem_certs/user1@example.com.p7pem
Nếu bạn có tệp P7B: Bạn có thể sử dụng nhận xét openssl sau để chuyển đổi tệp đó sang định dạng P7 PEM:
Bước 3: Tải cặp khoá và danh tính của người dùng lên
Trong bước này, bạn cần có tệp JSON chứa thông tin đăng nhập cho tài khoản dịch vụ mà bạn đã lưu vào máy tính ở Bước 2: Tạo tài khoản dịch vụ ở trên.
Cách dễ nhất để tải cặp khoá và danh tính của người dùng lên là chạy lệnh insert. Xin lưu ý rằng mỗi lệnh phải có một đối số, ví dụ:
Ngoài ra, bạn có thể thực hiện như sau cho mỗi người dùng:
- Chạy
insert_keypairvà lưu ý mã cặp khoá. - Chạy
insert_identitybằng mã cặp khoá đó.
Bạn cũng có thể lấy mã cặp khoá bằng cách chạy lệnh list_keypair.
Bước 4: Xác minh rằng người dùng có cặp khoá và danh tính CSE
Đảm bảo người dùng có cặp khoá và danh tính hợp lệ trong Gmail bằng cách chạy các lệnh sau cho mỗi người dùng:
list_keypair
list_identity
Cách chuyển sang một dịch vụ khoá khác cho tính năng CSE của Gmail
Nếu bạn muốn chuyển sang một dịch vụ khoá khác cho tính năng CSE của Gmail, hãy lặp lại bước 2 và 3 trong phần Thiết lập chứng chỉ S/MIME CSE cho người dùng ở trên, sử dụng dịch vụ khoá mới để gói các khoá riêng tư.
Lưu ý: Việc tải chứng chỉ mới lên cho người dùng không di chuyển nội dung sang dịch vụ khoá mới. Tuy nhiên, người dùng có thể tiếp tục truy cập vào email được mã hoá bằng các chứng chỉ trước đó và siêu dữ liệu khoá riêng tư được gói bằng dịch vụ khoá cũ.
Di chuyển thư sang Gmail dưới dạng email được mã hoá phía máy khách
Giờ đây, bạn có thể nhập thư (không bắt buộc) sau khi thiết lập tính năng CSE của Gmail. Để biết thông tin chi tiết, hãy xem bài viết Di chuyển thư sang Gmail dưới dạng email được mã hoá phía máy khách.