跳到主要内容
版本:3.10.x

配置开发者门户

部署开发者门户后,从提供商门户配置门户设置以控制访问、身份验证和开发者管理。

门户设置

门户设置在每个门户的 设置 页面下的提供商门户中进行管理。这些设置分为以下部分。

公共访问

公共访问 切换控制开发者门户是否可供未经身份验证的用户访问:

  • 启用:未经身份验证的访问者可以浏览 API 中心并查看公共 API 产品。
  • 禁用:所有访问者在访问任何门户内容之前都必须进行身份验证。

门户令牌

门户令牌使用门户 API 对 开发者门户应用程序进行身份验证。每个令牌都有前缀 a7prt,并且可以配置到期日期。

运营描述
生成创建一个具有名称和可选到期日期的新令牌。令牌值仅在创建时显示。
重命名更新令牌的显示名称。
再生生成一个新的令牌值,使前一个令牌值无效。使用新令牌更新 开发者门户config.yaml 并重新启动应用程序。
删除删除一个令牌。如果 开发者门户正在使用此令牌,它将失去与门户 API 的连接。
备注

重新生成或删除令牌后,更新 开发者门户主机上的 config.yaml 并重新启动应用程序。如果没有有效的令牌,门户将无法正常运行。

内置身份验证

内置身份验证选项控制开发者门户上的电子邮件和密码注册与登录。

设置描述
启用自助注册启用后,开发者可以直接在开发者门户上注册。禁用后,只能通过邀请或外部身份提供商添加开发者。
注册自动批准启用后,新的开发者账户将立即激活。禁用后,管理员必须批准提供商门户中的每个注册。
使用电子邮件登录启用后,开发者可以使用他们的电子邮件地址登录。

可以完全启用或禁用内置身份验证选项。禁用它会从开发者门户中删除电子邮件/密码登录选项。至少一个登录选项(内置或 SSO)必须保持启用状态。

SSO(外部登录选项)

你可以将外部身份提供商配置为开发者门户的附加登录选项。这些是与内置身份验证分开管理的。有关详细说明,请参阅为开发者门户配置 SSO

SCIM 预配

SCIM(跨域身份管理系统)支持从外部身份提供商自动进行用户同步。启用后,将根据身份提供商的更改在开发者门户中自动创建、更新和停用用户账户。

启用 SCIM:

  1. 导航至门户的设置页面。
  2. 启用 SCIM 预配
  3. 生成用于配置身份提供者的 SCIM 令牌。
  4. 使用 SCIM 端点URL 和令牌配置身份提供商(例如 Okta)。

有关完整的 Okta 演练,请参阅使用 Okta 为自定义开发者门户配置 SCIM 预配

SCIM 端点遵循以下格式:

https://<PORTAL_DOMAIN>/api/auth/scim/v2

应用程序配置

以下设置是在开发者门户的 config.yaml 文件中配置的,需要重启才能生效。

门户 API 连接

config.yaml
portal:
url: https://<CONTROL_PLANE_HOST>:4321 # 门户 API 端点
token: a7prt-xxxxxxxxxxxx # 从提供商门户获取的门户令牌

数据库

config.yaml
db:
url: "postgres://user:password@host:5432/dbname"

开发者门户使用 PostgreSQL 兼容的数据库来存储用户会话、身份验证数据和组织信息。

身份验证秘密

config.yaml
auth:
secret: "<base64-encoded-secret>"

此秘密用于签署身份验证会话。生成它:

openssl rand -base64 32

应用程序 URL

config.yaml
app:
name: "My Developer Portal" # Displayed in browser title and header
desc: "API documentation portal" # Used for SEO meta description
baseURL: "https://portal.example.com"
trustedOrigins:
- "https://portal.example.com"

环境变量替换

配置值支持环境变量替换:

语法行为
${VAR}必需的。如果未设置变量,则失败。
${VAR:default}选修的。如果未设置变量,则使用默认值。

示例:

config.yaml
portal:
url: ${PORTAL_API_URL}
token: ${PORTAL_TOKEN}
auth:
secret: ${AUTH_SECRET}

其他资源