从 OAuth1 转换为 OAuth2 的说明
从22.1版本开始,我们摒弃了传统的公共OAuth1 API端点,因为它们需要不符合FIPS标准的SHA1哈希。摒弃内容包括传统的 WCF(Windows通信框架)端点、用于这些传统端点的Swagger以及OAuth1中间件。要替换 OAuth1 端点,您可以使用 21.4 版发布且符合 FIPS 标准的旧版 API 的 OAuth2 版本。使用 OAuth2 API 时,功能体验与 OAuth1 API 相同。唯一的例外是
GET/workflows/id/package
调用目前返回一个文件,而不是一个二元对象。
OAuth2 将继续支持订阅、V1 和 V2 端点。
如何从 OAuth1 转换为 OAuth2
更新脚本
如果您当前使用的是 21.4 版,并且正在升级到 22.1 版或任何后续版本,则可以在不停机的情况下更新 API 脚本,因为 21.4 版提供了 OAuth1 API 和 OAuth2 API。我们建议您在升级之前更新 OAuth1 API 脚本。
如果要从 21.4 版以外的 Server 版本升级到 22.1 版,则在升级后您需要将脚本更新为 OAuth2 API,然后脚本才能运行。
您必须使用新的 OAuth2 模式更新 OAuth1 API 调用。为此,您需要更新现有脚本的两个方面:
将 基 URL 从
<hostname>/gallery/api/
更改为<hostname>/Webapi/
。将 授权类型 从 OAuth1 更改为 OAuth2。
如果升级到 22.1 版并尝试在不更新 API 脚本的情况下运行 OAuth 1 API,这些脚本将会失败。
此更新估计最多需4小时左右。如果您遵循最佳实践,即在一个位置进行身份验证,并在一个位置定义基 URL,则此估计值将适用。如果您在多个位置和脚本中进行身份验证,并在多个位置和脚本中使用完整的硬编码 URL,则更新过程可能会更加繁琐。要加快速度,您可以使用 查找和替换 。
测试
执行快速Smoke测试以确保验证工作正常。但是,由于我们不知道您如何使用 API,因此无法确定测试需要多长时间。
注意
OAuth1和OAuth2的请求和响应之间的差异很小,如下所示:
GET v1/jobs/{id}
现在包含换行符和空格,这在以前是不存在的。根据您处理响应的方式,这可能需要对脚本进行调整。GET v1/workflows/{id}/package
返回一个文件而不是 JSON blob。GET v1/jobs/{id}/output/{id}
需要 Oauth2 中的格式参数。在Oauth1中,此参数是可选的。
要详细了解转换及其影响,请转至 转换说明 。