启用 SAML 后使用 Edge 管理员实用程序和 API

适用于私有云的 Edge v4.18.01

本部分介绍了如何在启用 SAML 后运行 Edge 系统管理工具和命令。 Edge 上的许多任务都需要系统管理凭据,例如:

  • 创建组织和环境
  • 添加和移除 Edge 组件
  • Runngin apigee-adminapi.sh 命令
  • 许多其他任务

不过,在 Edge 上启用 SAML 后,您通常会停用基本身份验证,这样就只有 通过 SAML IDP 进行身份验证因此,您必须确保在代码中添加 系统管理员账号与您的 SAML IDP 相关联。

将 Edge Management API 作为 系统管理员

许多 Edge API 调用都要求您传递系统管理员凭据。将 SAML 与 Edge Management API 搭配使用包含以下内容: 关于如何在进行 Edge Management API 调用时获取和刷新令牌的说明。

使用 apigee-adminapi.sh 使用 SAML 身份验证的实用程序

使用 apigee-adminapi.sh 实用程序,用于执行您通过调用 Edge 来执行相同的 Edge 配置任务。 Management API。apigee-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 指定 passcodepassword_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 指定 密码
  • 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 指定 passcodepassword_grant,具体取决于您最初获取令牌的方式。在此示例中,您指定了通行密钥,因为您最初是使用 get_token 获取的令牌。请参阅将 SAML 与 Edge 管理 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 指定 passcodepassword_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 指定 passcodepassword_grant,具体取决于您最初获取令牌的方式。在本例中,您之所以指定密码,是因为您最初获得了 使用 get_token 创建令牌。请参阅将 SAML 与 Edge 管理 API 搭配使用
  • OAUTH_BEARER_TOKEN 包含 令牌。