Chrome Enterprise 進階版的一項重要原則是,服務存取權會根據我們對您和您裝置的瞭解而授予。系統會查詢多個資料來源,動態推斷授予單一使用者或裝置的存取層級。Chrome Enterprise Premium 會在決策程序中採用這個信任等級。
Access Context Manager 是 Chrome Enterprise Premium 的零信任政策引擎。Access Context Manager 可讓您依據屬性,為應用程式和Google Cloud 資源定義精細的存取控管機制。
根據要求的情境資訊,使用存取層級允許存取資源。您可以開始使用存取層級,整理信任層級。舉例來說,您可以建立名為 High_Level 的存取層級,允許一小群高權限使用者提出要求。您也可以找出要信任的較一般群組,例如要允許要求來自的 IP 位址範圍。在這種情況下,您可能會建立名為 Medium_Level 的存取層級,允許這些要求。
零信任存取權的主要規定之一,就是裝置必須是由公司管理或擁有,才能允許使用者存取。您可以透過多種方式判斷裝置是否為公司擁有。其中一種方法是判斷裝置是否具備公司核發的有效憑證。裝置上的企業憑證可指出裝置是否為公司擁有。
情境感知存取權的企業憑證是整體 Chrome Enterprise Premium 憑證式存取解決方案的一項功能。這項功能會使用裝置憑證做為替代的情境感知信號,判斷裝置是否為公司擁有的資產。這項功能適用於 Chrome 瀏覽器 110 以上版本。
由於裝置可以有多個憑證,您可以在自訂存取層級中,透過 .exist(e,p) 巨集存取企業憑證:
device.certificates.exists(cert, predicate)
在本範例中,cert 是 predicate 中使用的 ID,會繫結至裝置憑證。exists() 巨集會結合每個元素的述詞結果和「or」(||) 運算子,也就是說,如果至少有一個憑證符合 predicate 運算式,巨集就會傳回 true。
憑證具有下列屬性,可一併檢查。請注意,比較字串時會區分大小寫。
| 屬性 | 說明 | 述詞運算式範例
(其中的 cert 是巨集的 ID) |
|---|---|---|
is_valid |
如果憑證有效且並未過期,則傳回 True (布林值)。
您無法將這個屬性與端點驗證搭配使用,因為端點驗證不會檢查憑證撤銷狀態。 |
cert.is_valid |
cert_fingerprint |
憑證指紋 (Base64 未填充 SHA256)。
指紋是 DER 編碼憑證的未填充 base64 編碼 SHA256 摘要 (二進位格式)。您可以使用 OpenSSL,透過下列程序從 PEM 格式的憑證產生字串:
|
cert.cert_fingerprint == origin.clientCertFingerprint()
|
root_ca_fingerprint |
用來簽署憑證的根 CA 憑證指紋
(Base64 未填充 SHA256)。 指紋是 DER 編碼憑證的未填充 base64 編碼 SHA256 摘要 (二進位格式)。您可以使用 OpenSSL,透過下列程序從 PEM 格式的憑證產生字串:
|
cert.root_ca_fingerprint == "the_fingerprint" |
issuer |
核發單位名稱 (完整的擴充名稱)。
如要尋找核發單位名稱,請使用下列方法: 在憑證上執行下列指令:
$ openssl x509 -in ca_1.crt -issuer
issuer= /C=IN/ST=UP/L=NCR/O=BCEDemo/OU=BCEDemo_1/CN=inter_1/emailAddress=test_inter1@beyondcorp.in
如要取得存取層級的核發單位字串,請反轉輸出內容,並將每個正斜線 (/) 替換為半形逗號 (,):
|
cert.issuer == "EMAILADDRESS=test_inter1@beyondcorp.in, CN=inter_1, OU=BCEDemo_1, O=BCEDemo, L=NCR, ST=UP, C=IN" |
subject |
憑證的主體名稱 (完整的擴充名稱)。 | cert.subject == "CA_SUB" |
serial_number |
憑證的序號 (字串)。 | cert.serial_number = "123456789" |
template_id |
憑證的 X.509 擴充功能憑證範本 ID (字串)。 | cert.template_id = "1.3.6.1.4.1.311.21.8.15608621.11768144.5720724.16068415.6889630.81.2472537.7784047" |
下表列出可設定的政策範例:
| 範例政策 | 運算式 |
|---|---|
| 裝置具備由公司根憑證簽署的有效憑證。 | device.certificates.exists(cert, cert.is_valid && cert.root_ca_fingerprint == "ROOT_CA_FINGERPRINT")
|
裝置具備由核發單位核發的有效憑證
CA_ABC。 |
device.certificates.exists(cert, cert.is_valid && cert.issuer == "EMAILADDRESS=test_inter1@beyondcorp.in, CN=inter_1, OU=BCEDemo_1, O=BCEDemo, L=NCR, ST=UP, C=IN")
|
設定企業憑證
設定企業憑證前,請務必先設定自訂存取層級。如需操作說明,請參閱「建立自訂存取層級」。
您可以透過 Access Context Manager 自訂存取層級定義,設定適當的政策。自訂存取層級會使用以部分一般運算語言 (CEL) 編寫的布林運算式,測試提出要求的用戶端屬性。
在管理控制台中上傳信任錨點
如要讓 Chrome Enterprise 進階版收集及驗證裝置企業憑證,您必須上傳信任錨點,以及用於核發裝置憑證的所有中繼憑證。信任錨點是自行簽署的根 CA (憑證授權單位) 憑證,以及相關的中繼和從屬憑證。如要上傳信任錨點,請完成下列步驟:
- 前往管理控制台,然後依序前往「裝置」>「網路」>「憑證」。
- 選取適當的組織單位。
- 選取「新增憑證」。
- 輸入憑證名稱。
- 上傳憑證。
- 勾選「端點驗證」核取方塊。
- 按一下「新增」。
- 確認使用者所屬的機構單位已上傳信任錨點。
設定 AutoSelectCertificateForUrls 政策
如要讓「端點驗證」功能透過 Chrome 搜尋並收集裝置憑證,您必須完成下列步驟,設定「AutoSelectCertificateForURLs」政策:
確認 Chrome 瀏覽器是由 Chrome 瀏覽器雲端管理服務管理。
- 如果是 Windows、macOS 和 Linux,請使用 Chrome Enterprise 程式碼設定雲端管理的 Chrome 瀏覽器。如需操作說明,請參閱「申請 Chrome Enterprise 基本版」。
- 註冊裝置後,貴機構就能集中管理該裝置。如需操作說明,請參閱「註冊採用雲端式管理的 Chrome 瀏覽器」。
在管理控制台中新增 AutoSelectCertificateForUrls 政策:
- 前往管理控制台,然後依序點選「裝置」>「Chrome」>「設定」>「使用者與瀏覽器設定」>「用戶端憑證」。
- 選取適當的組織單位。
根據下列範例新增 AutoSelectCertificateForUrls 政策:
{"pattern":"https://[*.]clients6.google.com","filter":{"ISSUER":{"CN":"CERTIFICATE_ISSUER_NAME"}}}將 CERTIFICATE_ISSUER_NAME 替換為憑證授權單位的常用名稱。請勿修改
pattern的值。
如要驗證政策設定,請完成下列步驟:
- 在瀏覽器中前往
chrome://policy。 - 確認 AutoSelectCertificateForUrls 的設定值。
- 確認政策的「套用對象」值已設為「裝置」。在 Chrome 作業系統上,這個值會套用至「目前使用者」。
- 確認政策的「狀態」未顯示「衝突」。
排解設定問題
查看裝置詳細資料頁面的憑證屬性,確認這些屬性正確無誤。
您可以使用「端點驗證」記錄來排解任何問題。如要下載端點驗證記錄,請完成下列步驟:
- 在 Endpoint Verification 擴充功能上按一下滑鼠右鍵,然後前往「選項」。
- 依序選取「記錄層級」>「全部」>「下載記錄」。
- 向 Cloud Customer Care 提出客服案件,並提供記錄檔以便進一步偵錯。