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
是要在 predicator
中使用的 ID,可繫結至裝置憑證。exist()
巨集會結合每個元素的述詞結果和「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 Premium 收集及驗證裝置企業憑證,您必須上傳信任錨點和用於核發裝置憑證的所有中繼憑證。這裡的信任錨點是指自行簽署的根 CA (憑證授權單位) 憑證,以及相關的中繼和從屬憑證。如要上傳信任錨點,請完成下列步驟:
- 前往管理控制台,然後依序點選「裝置」>「網路」>「憑證」。
- 選取適當的機構單位。
- 選取「新增憑證」。
- 輸入憑證名稱。
- 上傳憑證。
- 勾選「端點驗證」核取方塊。
- 按一下「新增」。
- 確認使用者所屬的機構單位已上傳信任錨點。
設定 AutoSelectCertificateForUrls 政策
如要讓「端點驗證」功能透過 Chrome 搜尋並收集裝置憑證,您必須完成下列步驟,設定「AutoSelectCertificateForURLs」Chrome 政策:
確認 Chrome 瀏覽器是由 Chrome 瀏覽器雲端管理服務管理。
- [Win/OSX/Linux] 使用 CBCM 設定受管理 Chrome 瀏覽器 https://support.google.com/chrome/a/answer/9301891。
- [Chrome] 將裝置註冊至企業。
在管理控制台中新增 AutoSelectCertificateForUrls 政策:
- 前往管理控制台,然後依序前往「裝置」>「Chrome」>「設定」>「使用者與瀏覽器設定」>「用戶端憑證」。
- 選取適當的機構單位。
新增 AutoSelectCertificateForUrls 政策,如以下範例所示:
{"pattern":"https://[*.]clients6.google.com","filter":{"ISSUER":{"CN":"CERTIFICATE_ISSUER_NAME"}}}
將 CERTIFICATE_ISSUER_NAME 替換為根 CA 的常用名稱。請勿修改
pattern
的值。
如要驗證政策設定,請完成下列步驟:
- 在瀏覽器中前往 chrome://policy。
- 確認 AutoSelectCertificateForUrls 的設定值。
- 確認政策的「套用對象」值已設為「裝置」。在 Chrome 作業系統上,這個值會套用至「目前使用者」*。
- 確認政策的「狀態」未顯示「衝突」。
排解設定問題
查看裝置詳細資料頁面上的憑證屬性,確認憑證屬性是否正確列出。
您可以使用「端點驗證」記錄來排解任何問題。如要下載端點驗證記錄,請完成下列步驟:
- 在 Endpoint Verification 擴充功能上按一下滑鼠右鍵,然後前往「選項」。
- 依序選取「記錄層級」>「全部」>「下載記錄」。
- 向 Cloud Customer Care 提出客服案件,並提供記錄檔以便進一步偵錯。