环境与地址
本文介绍 Sandbox 和 Production 的使用范围,以及文档、身份认证、API 和 Webhook 的地址配置。应用、凭证、Audience、Scope、数据、Webhook 和配额按应用环境隔离。
两层环境模型
| 环境类型 | 可选值 | 说明 |
|---|---|---|
| 部署环境 | development、test-us、production | 开发者文档、后台、身份认证和 API 的接入地址与可用性 |
| Application 环境 | sandbox、production | Application、两类身份的 OAuth Client 与 API 调用权限、Webhook、配额和验收生命周期 |
应用的 environment 仅支持 sandbox 和 production。sandbox 应用可在 Development 或 test-us 联调;development、test-us 和发布参数不能填入该字段。
部署环境与可用性
| 部署环境 | Application 用途 | 地址来源 | 状态 |
|---|---|---|---|
development | Sandbox 开发与联调 | 当前环境提供的一组接入地址 | 用于开发联调,不承载 Production Application 或生产数据 |
test-us | Sandbox 受邀实机验收 | 受邀测试提供的一组接入地址 | 仅限受邀测试,不能作为通用公开入口 |
production | 独立 Production Application | 正式接入提供的一组地址 | 尚未确定业务发布目标,当前为 disabled |
获取接入地址
| 配置项 | 用途 | 获取方式 |
|---|---|---|
GOODVISION_DEVELOPER_DOCS_ORIGIN | 开发者文档;同源 /console/ 为当前环境开发者后台 | 当前环境接入配置 |
GOODVISION_IDENTITY_ISSUER | 完整 OAuth/OIDC Issuer | 当前环境身份认证配置 |
GOODVISION_API_BASE | 当前应用已开通 API 产品的 Base URL | API 产品调用配置 |
GOODVISION_WEBHOOK_ORIGIN | 当前应用的 Webhook 地址范围 | Webhook 接入配置 |
使用同一部署环境提供的四项配置,不能根据域名后缀推导或混用其他环境。
GOODVISION_DEVELOPER_DOCS_ORIGIN 用于文档和控制台,不能作为 API Base、OIDC Issuer 或 Webhook Origin。调用 API 时,使用当前应用产品配置中的 GOODVISION_API_BASE、版本化路径、Audience 和 Scope。地址可达后,仍需检查对应接口权限。
请使用当前环境提供的接入配置,无需自行配置平台的网关、证书或安全防护。
Identity Issuer
使用当前部署配置提供的 Issuer 查询 Discovery:
${GOODVISION_IDENTITY_ISSUER}/.well-known/openid-configuration客户端必须精确校验 Discovery 返回的 issuer,不能按域名后缀替换,也不能在失败时回退到其他部署环境。
从 Sandbox 进入 Production
Production 不是 Sandbox Application 的开关。上线前必须创建独立 Production Application 和 OAuth Client,重新申请 API Product、Scope、配额、Callback、Origin 和 Webhook,并完成生产验收。Sandbox 的 Token、Secret、Application ID、Webhook Secret 和业务数据都不能复制到 Production。
运营和运维入口不向第三方开放,也不与 Developer Console 共用 Session 或 OAuth Client。
环境隔离检查
- 报告同时记录部署环境和 Application 环境,不用一个
sandbox同时表示两者。 - Sandbox 和 Production 使用不同 Application、OAuth Client、API 调用权限、Webhook 和配额。
- Token 的
iss、aud和 Scope 与当前应用的调用配置一致。 - 日志和告警记录部署环境与 Application ID,但不记录凭证。
- Production 使用正式环境地址、凭证和数据,不复用 test-us 配置。
使用当前应用提供的完整 Issuer 和 Discovery 返回地址;token_endpoint、authorization_endpoint、end_session_endpoint 不由固定路径推导。