停用 Edge 的基本驗證功能

Private Cloud v4.19.01 版

啟用 Edge 上的 SAML 後,即可停用基本驗證。但在您之前 停用基本驗證

  • 請確認您已將所有 Edge 使用者 (包括系統管理員) 新增至您的 SAML IDP。
  • 確認您已在 Edge UI 和 Edge 管理上全面測試 SAML 驗證 也能使用 Google Cloud CLI 或 Compute Engine API
  • 如果您使用的是 Apigee Developer Services 入口網站 (或簡稱入口網站),請在入口網站上設定並測試 SAML,以便 確保入口網站可連線至 Edge。如需說明,請參閱設定 入口網站,透過 SAML 與 Edge 通訊

查看目前的安全性設定檔

您可以查看邊緣安全性設定檔來判斷目前的設定,以判斷目前的設定是否 目前已啟用基本驗證和 SAML。在 Edge 上使用下列 Edge Management API 呼叫 查看 Edge 所使用的目前安全性設定檔:

curl -H "accept:application/xml" http://localhost:8080/v1/securityprofile -u sysAdminEmail:pWord

如果您尚未設定 SAML,回應如下,表示「基本驗證」 已啟用:

<SecurityProfile enabled="true" name="securityprofile">
    <UserAccessControl enabled="true">
    </UserAccessControl>
</SecurityProfile>

如果您已啟用 SAML,則會顯示 <ssoserver> 標記 輸出:

<SecurityProfile enabled="true" name="securityprofile">
    <UserAccessControl enabled="true">
        <SSOServer>
            <BasicAuthEnabled>true</BasicAuthEnabled>
            <PublicKeyEndPoint>/token_key</PublicKeyEndPoint>
            <ServerUrl>http://35.197.37.220:9099</ServerUrl>
        </SSOServer>
    </UserAccessControl>
</SecurityProfile>

請注意,啟用 SAML 的版本也會顯示 &lt;BasicAuthEnabled&gt;true&lt;/BasicAuthEnabled&gt; 代表「基本驗證」為

停用基本驗證

在 Edge Management Server 上,使用下列 Edge Management API 呼叫來停用基本版 驗證請注意,您會以酬載的形式傳送上一節中傳回的 XML 物件。只有 差別在於 &lt;BasicAuthEnabled&gt;false&lt;/BasicAuthEnabled&gt;:

curl -H "Content-Type: application/xml"
http://localhost:8080/v1/securityprofile  -u sysAdminEmail:pWord -d
 '<SecurityProfile enabled="true" name="securityprofile">
  <UserAccessControl enabled="true">
    <SSOServer>
      <BasicAuthEnabled>false</BasicAuthEnabled>
      <PublicKeyEndPoint>/token_key</PublicKeyEndPoint>
      <ServerUrl>http://35.197.37.220:9099</ServerUrl>
  </SSOServer>
 </UserAccessControl>
</SecurityProfile>'

停用基本驗證後,所有通過基本驗證憑證的 Edge Management API 呼叫都會 會傳回下列錯誤:

<Error>
    <Code>security.SecurityProfileBasicAuthDisabled</Code>
    <Message>Basic Authentication scheme not allowed</Message>
    <Contexts/>
</Error>

重新啟用基本驗證

如果您因故必須重新啟用基本驗證,則必須執行下列步驟:

  1. 登入任何 Edge ZooKeeper 節點。
  2. 執行下列 bash 指令碼,關閉所有安全防護功能:
    #! /bin/bash
    /opt/apigee/apigee-zookeeper/bin/zkCli.sh -server localhost:2181 <<EOF
    set /system/securityprofile <SecurityProfile></SecurityProfile>
    quit
    EOF

    輸出內容的格式如下:

    Connecting to localhost:2181
    Welcome to ZooKeeper!
    JLine support is enabled
    WATCHER::
    WatchedEvent state:SyncConnected
    type:None path:null
    [zk: localhost:2181(CONNECTED) 0]
    set /system/securityprofile <SecurityProfile></SecurityProfile>
    cZxid = 0x89
    ...
    [zk: localhost:2181(CONNECTED) 1] quit
    Quitting...
  3. 重新啟用基本驗證和 SAML 驗證:
    curl -H "Content-Type: application/xml" http://localhost:8080/v1/securityprofile
      -u sysAdminEmail:pWord -d '<SecurityProfile enabled="true" name="securityprofile">
      <UserAccessControl enabled="true">
      <SSOServer>
      <BasicAuthEnabled>true</BasicAuthEnabled>
      <PublicKeyEndPoint>/token_key</PublicKeyEndPoint>
      <ServerUrl>http://35.197.37.220:9099</ServerUrl>
      </SSOServer>
      </UserAccessControl>
      </SecurityProfile>'

    您現在可以再次使用基本驗證。