Edge for Private Cloud 4.18.01
本節說明如何在啟用 SAML 後執行 Edge 系統管理員工具和指令。 Edge 上的許多工作都需要系統管理憑證,例如:
- 建立機構和環境
- 新增及移除 Edge 元件
- 執行 apigee-adminapi.sh 指令
- 許多其他工作
不過,在 Edge on Edge 上啟用 SAML 後,通常會停用基本驗證 皆須透過 SAML IDP 進行驗證。因此,請務必確認您已加入 新增到您的 SAML IDP。
以系統管理員身分呼叫 Edge 管理 API
許多 Edge API 呼叫都必須傳遞系統管理員憑證。在 Edge 管理 API 中使用 SAML 說明如何在發出 Edge 管理 API 呼叫時取得及重新整理權杖。
使用 apigee-adminapi.sh 公用程式搭配 SAML 驗證
使用 apigee-adminapi.sh 公用程式,藉由呼叫 Edge 來執行相同的 Edge 設定工作 Management APIapigee-adminapi.sh 公用程式的優點如下:
- 使用簡單的指令列介面
- 實作以 Tab 為基礎的指令自動完成功能
- 提供說明和使用資訊
- 如果您決定試用 API,可顯示對應的 API 呼叫
詳情請參閱「使用 apigee-ssoadminapi.sh」。
啟用 SAML 驗證後,您可以透過多種方式將系統傳送給系統管理員。 名為 apigee-adminapi.sh 公用程式。
您可以針對任何 apigee-adminapi.sh 指令看見所有選項,包括 指定 SAML 憑證的選項,方法是使用「-h」該指令例如:
> apigee-adminapi.sh orgs list -h
舉例來說,您可以傳遞系統管理員憑證:
> apigee-adminapi.sh orgs list --sso-url http://edge_sso_IP_DNS:9099 --oauth-flow password_grant --admin adminEmail --oauth-password adminPword
其中:
- sso-url 會指定 Edge SSO 模組的網址。修改通訊埠或通訊協定 (如果您從 9099 變更通訊埠或通訊協定,然後 HTTP
- oauth-flow 會指定 passcode 或 password_grant。在這個範例中 指定 password_grant。
- adminEmail 是系統管理員的電子郵件地址。
- oauth-password 會指定 系統管理員的密碼。
或者,您也可以在呼叫指令時使用密碼:
> apigee-adminapi.sh orgs list --sso-url http://edge_sso_IP_DNS:9099 --oauth-flow passcode --admin adminEmail --oauth-passcode passcode
其中:
- oauth-flow 會指定 passcode。
- oauth-passcode 會指定 從 http://edge_sso_IP_DNS:9099/passcode 取得的密碼。
最後,您可以在呼叫指令時使用權杖:
> apigee-adminapi.sh orgs list --sso-url http://edge_sso_IP_DNS:9099 --oauth-flow passcode --admin adminEmail --oauth-token token
其中:
- oauth-flow 會指定 passcode 或 password_grant (取決於您的方式) 最初取得權杖在本範例中,您會指定 passcode,因為您最初是使用 get_token 取得權杖。詳情請見 將 SAML 與 Edge Management API 搭配使用。
- oauh_token 包含權杖。
使用 Edge 公用程式搭配 SAML 驗證
許多 Edge 公用程式需要系統管理員憑證,例如:
- apigee-provision 用於建立機構、環境和虛擬主機
- setup.sh 用於在現有系統中新增節點
- 任何其他公用程式,您必須在設定檔中指定系統管理員憑證
這些公用程式做為輸入設定檔的輸入設定檔,用於指定系統管理員的 來部署憑證
ADMIN_EMAIL="adminEmail" APIGEE_ADMINPW=adminPWord
如果您省略密碼,系統將提示您輸入密碼。
啟用 SAML 後,您可以使用不同的屬性指定系統管理員的憑證。舉例來說,您可以傳遞系統管理員憑證:
ADMIN_EMAIL="adminEmail" SSO_LOGIN_URL=http://edge_sso_IP_DNS:9099 OAUTH_FLOW=password_grant OAUTH_ADMIN_PASSWORD=adminPWord
其中:
- SSO_LOGIN_URL 會指定 Edge 單一登入 (SSO) 模組的網址。修改通訊埠或通訊協定 (如果您從 9099 變更通訊埠或通訊協定,然後 HTTP
- OAUTH_FLOW 會指定 passcode 或 password_grant。在本例中,您會傳遞系統管理員的密碼,因此請指定 password_grant。
- OAUTH_ADMIN_PASSWORD 指定系統管理員的密碼。
您也可以使用下列屬性,將憑證指定為 密碼流動方式:
ADMIN_EMAIL="adminEmail" SSO_LOGIN_URL=http://edge_sso_IP_DNS:9099 OAUTH_FLOW=passcode OAUTH_ADMIN_PASSCODE=passcode
其中:
- OAUTH_FLOW 會指定密碼。
- OAUTH_ADMIN_PASSCODE 指定從 http://edge_sso_IP_DNS:9099/passcode 取得的密碼。
最後,您可以使用
ADMIN_EMAIL="adminEmail" SSO_LOGIN_URL=http://edge_sso_IP_DNS:9099 OAUTH_FLOW=passcode OAUTH_BEARER_TOKEN=token
其中:
- OAUTH_FLOW 會指定 passcode 或 password_grant (取決於您的方式) 最初取得權杖在本例中,您要指定「passcode」,因為您原本取得 符記。get_token。請參閱「使用 SAML 與 Edge 管理 API」。
- OAUTH_BEARER_TOKEN 包含 取得憑證