下载服务凭据
下载服务凭据的步骤与初始化类似。
-
确保您以下列身份登录:
- Adobe IMS组织管理员
- AEM Author 上的 AEM管理员 IMS产品配置文件的成员
-
打开包含AEM as a Cloud Service环境的项目以与集成
-
点按 环境 分区中环境旁边的省略号,然后选择 Developer Console
-
点按 集成 选项卡
-
点按 技术帐户 选项卡
-
展开要使用的 技术帐户
-
展开将下载其服务凭据的 私钥,并验证状态为 活动
-
点按与 私钥 关联的 … > 视图,该私钥显示服务凭据JSON
-
点按左上角的下载按钮以下载包含服务凭据值的JSON文件,并将文件保存到安全位置
安装服务凭据
服务凭据提供生成JWT所需的详细信息,该JWT会交换用于向AEM as a Cloud Service进行身份验证的访问令牌。 服务凭据必须存储在可由其用于访问AEM的外部应用程序、系统或服务访问的安全位置。 每个客户的服务凭据的管理方式和位置都是唯一的。
为简单起见,本教程通过命令行在中传递服务凭据。 但是,请与您的IT安全团队合作,了解如何根据贵组织的安全指南存储和访问这些凭据。
- 将下载的服务凭据JSON复制到项目根目录中名为
service_token.json
的文件- 请记住,绝不要将 任何凭据 提交到Git!
使用服务凭据
服务凭据是一个完整格式的JSON对象,与JWT或访问令牌不同。 而是使用服务凭据(包含私钥)生成JWT,与Adobe IMS API交换访问令牌。
- 将服务凭据从AEM Developer Console下载到安全位置
- 外部应用程序需要以编程方式与AEM as a Cloud Service环境交互
- 外部应用程序从安全位置读取服务身份证明
- 外部应用程序使用服务凭据中的信息构建JWT令牌
- JWT令牌会发送到Adobe IMS以交换访问令牌
- Adobe IMS返回可用于访问AEM as a Cloud Service的访问令牌
- 访问令牌无法更改过期时间。
- 外部应用程序向AEM as a Cloud Service发出HTTP请求,并将访问令牌作为持有者令牌添加到HTTP请求的授权标头
- AEM as a Cloud Service接收HTTP请求、验证请求并执行HTTP请求所请求的工作,并将HTTP响应返回给外部应用程序
外部应用程序的更新
要使用服务凭据访问AEM as a Cloud Service,必须通过以下三种方式更新外部应用程序:
- 读取服务凭据
- 为简单起见,服务凭据将从下载的JSON文件中读取,但在实际使用场景中,服务凭据必须根据贵组织的安全指南进行安全存储
- 从服务凭据生成JWT
- 交换JWT以获取访问令牌
- 当存在服务凭据时,外部应用程序在访问AEM as a Cloud Service时使用此访问令牌,而不是本地开发访问令牌
在本教程中,Adobe的@adobe/jwt-auth
npm模块用于以下两者:(1)从服务凭据生成JWT,以及(2)在单个函数调用中将它交换为访问令牌。 如果您的应用程序不是基于JavaScript,请查看其他语言的示例代码,以了解如何从服务凭据创建JWT,并将其交换为具有Adobe IMS的访问令牌。