身份验证
身份验证
Frame.io V4 API 使用 Adobe Identity Management Service (IMS),Adobe 的 OAuth 2.0 身份平台。 共有两种身份验证类别:
SDK 身份验证指南
Frame.io SDK 为您处理完整的 OAuth 生命周期——包括授权 URL、令牌交换、自动刷新和撤销。选择您的语言以开始使用:
如果您正在构建后端服务或自动化功能,请从服务器到服务器开始。如果您的应用程序已有登录用户,请选择 Web 应用程序(如果您可以存储客户端密钥)或 SPA(如果您无法存储客户端密钥)。
用户身份验证
用户身份验证凭据在 Adobe Developer Console 中创建。 Adobe 支持三种凭据类型,请选择与您的应用程序架构匹配的类型:
Frame.io Python SDK 不包含原生应用程序凭据类,因为 Python 没有用于注册自定义 URI 方案处理程序的标准方法。 请改用 Web 应用程序与本地回调服务器。 TypeScript SDK 支持所有三种凭据类型。
服务器到服务器的身份验证
服务器到服务器的身份验证让您的应用程序充当服务帐户用户,无需人工参与。 您的应用程序使用客户端凭据进行身份验证并直接接收访问令牌。 服务帐户操作在 Frame.io 中显示为服务帐户的名称。 服务帐户访问权限通过 Adobe Admin Console 和 Developer Console 进行管理。 服务帐户名称目前无法进行调整。 有关实施详细信息,请参阅上述 SDK 特定的指南。
有关服务帐户设置的更多信息,请参阅使用 Frame.io 服务器到服务器支持实现您的设置自动化。
Adobe IMS 身份验证的工作原理
Adobe Identity Management Service (IMS) 是 Adobe 基于 OAuth 2.0 的身份管理功能,支持身份验证。 生成访问令牌需要两个步骤:
上述步骤对于所有三种类型的应用程序凭据都是必需步骤。 访问 IMS 端点 /authorize/v2 和 /token/v3 获取令牌的方式有所不同。 在获得访问令牌后,您可以使用它与 Frame.io V4 API 交互。
对于服务器到服务器的身份验证,没有用户授权步骤,应用程序直接使用客户端凭据通过 client_credentials 授权凭据获取访问令牌。
使用访问令牌
获得访问令牌后,请将其包含在每个 API 请求的 Authorization 标头中:
Frame.io SDK 会为您处理这一事项,只需在创建客户端时传递令牌(或提供令牌的可调用对象)。
令牌 TTL
访问令牌短期有效,通常在 1 小时后过期。 对于用户身份验证流程(Web 应用程序、SPA、原生应用程序),Adobe IMS 还会返回刷新令牌,可用于获取新的访问令牌,而无需用户再次登录。 刷新令牌的有效期较长,但最终也会过期。
对于服务器到服务器的身份验证,没有刷新令牌。 客户端凭据本身永不过期(除非手动轮换),因此应用程序始终可以请求新的访问令牌。
Frame.io SDK 会自动处理令牌刷新,请参阅 SDK 特定的指南了解详细信息。
权限范围
在 Adobe Developer Console 中创建凭据时,您将需要配置 OAuth 权限范围来确定应用程序可以访问的内容。 Frame.io SDK 使用以下默认权限范围:
用户身份验证流需要 offline_access 权限范围才能接收刷新令牌。 如果没有这个权限范围,您将只会获得访问令牌,用户需要在令牌过期时重新进行身份验证。
旧版开发者令牌
对于已迁移到 V4 但尚未通过 Adobe Admin Console 进行管理的帐户,您可以继续使用在 Frame.io 开发者网站中管理的旧版开发者令牌。 将令牌直接传递给 SDK:
在 V4 API 中使用旧版开发者令牌时,您必须在所有 API 请求中添加值为 true 的 x-frameio-legacy-token-auth 标头。 如果您使用 SDK,请通过客户端的请求选项进行设置。
旧版开发者令牌不会过期,但它们是一种过渡机制。 对于新的集成和生产工作负载,我们推荐使用下面的其中一个 OAuth 2.0 流。 有关详细信息,请参阅迁移指南。
如果您是要从 Frame.io 旧版迁移到 V4 的企业客户,请联系您的客户成功经理 (CSM) 获取有关设置旧版开发者令牌和 V4 的帮助
有关从旧版令牌过渡到 Adobe IMS 身份验证的详细信息,请参阅迁移指南。