使用OAuth身份验证配置基于微服务的发布
发布微服务允许您在Experience Manager Guides as a Cloud Service上同时运行大型发布工作负载,并利用业界领先的Adobe I/O Runtime无服务器平台。
对于每个发布请求,Experience Manager Guides as a Cloud Service会运行一个单独的容器,该容器可根据用户请求水平缩放。 与大型内部部署Adobe Experience Manager服务器相比,这提供了运行多个发布请求并获得更高性能的功能。
由于云发布服务受Adobe IMS基于OAuth的身份验证保护,请执行以下步骤以将其环境与Adobe的安全基于令牌的身份验证工作流集成,并开始使用基于云的可伸缩发布解决方案。
在Adobe Developer Console中创建IMS配置
创建配置所需的角色:系统管理员
执行以下步骤以在 Adobe Developer Console 中创建IMS配置:
-
打开 Developer Console:
https://developer.adobe.com/console
。 -
从顶部切换到 项目 选项卡。
{width="500"}
在 Adobe Developer Console 上选择 项目 选项卡
-
要创建新的空项目,请从 创建新项目 下拉列表中选择 空项目。
{width="500"}
创建新的空项目。
-
从 添加到项目 下拉列表中选择 API 以将IO管理API添加到您的项目中。
{width="300"}
从下拉列表中选择API项目。
{width="500"}
将I/O管理API添加到您的项目中。
-
创建新的OAuth凭据并保存它。
{width="500"}
为你的API配置OAuth凭据。
-
返回 项目 选项卡,然后在左侧选择 项目概述。
{width="500"}
开始新项目。
-
单击顶部的 下载 按钮以下载服务JSON。
{width="500"}
下载JSON服务详细信息。
您已配置OAuth身份验证详细信息并下载JSON服务详细信息。 根据下一节中的要求,随时准备此文件。
将IMS配置添加到环境
更新现有配置(JWT) 到OAuth Shift )
如果您已在使用微服务来使用JWT进行发布(已弃用),请执行以下步骤,以更新配置:
-
打开 Experience Manager 并选择包含要配置的环境的程序。
-
切换到 环境 选项卡。
-
选择要配置的环境的名称。 这应该会将您导航到 环境信息 页面。
-
切换到 配置 选项卡。
-
使用您下载的新OAuth JSON文件更新SERVICE_ACCOUNT_DETAILS JSON字段。
-
删除PRIVATE_KEY字段。
{width="500"}
更新现有JWT环境配置。
首次配置
要首次使用发布微服务,请按照以下步骤更新配置:
-
打开 Experience Manager 并选择包含要配置的环境的程序。
-
切换到 环境 选项卡。
-
选择要配置的环境的名称。 这应该会将您导航到 环境信息 页面。
-
切换到 配置 选项卡。
-
创建名为SERVICE_ACCOUNT_DETAILS的新配置。 在值中,添加您从开发人员控制台下载的OAuth JSON文件的内容。
{width="500"}
首次配置环境。
基于微服务的发布支持的首次代码更改
将IMS配置添加到环境后,执行以下步骤以使用OSGi将这些资产与Experience Manager Guides链接:
-
在您的Cloud Manager Git项目代码中,将以下两个文件添加到
/apps/fmditaCustom/config
中(对于文件内容,请查看附录)。com.adobe.aem.guides.eventing.ImsConfiguratorService.cfg.json
com.adobe.fmdita.publishworkflow.PublishWorkflowConfigurationService.xml
-
确保
filter.xml
涵盖新添加的文件。 -
提交并推送您的Git更改。
-
运行管道以将更改应用到环境。
完成此操作后,您可以使用基于微服务的云发布。
常见问题解答
- 如果启用了使用微服务的OSGi配置,则发布过程能否在本地Experience Manager服务器上使用相同的代码库?
- 否,如果标志
dxml.use.publish.microservice
设置为true
,它始终会查找微服务配置。 将dxml.use.publish.microservice
设置为false
以便在本地服务器上进行发布。
- 否,如果标志
- 使用基于微服务的发布时,为DITA进程分配了多少内存? 这是否通过DITA配置文件和参数驱动?
- 对于基于微服务的发布,内存分配不会通过DITA配置文件和参数驱动。 服务容器上可用的总内存为8 GB,其中6 GB分配给DITA-OT进程。
附录 appendix
文件:com.adobe.aem.guides.eventing.ImsConfiguratorService.cfg.json
内容:
{
"service.account.details": "$[secret:SERVICE_ACCOUNT_DETAILS]",
}
文件: com.adobe.fmdita.publishworkflow.PublishWorkflowConfigurationService.xml
内容:
dxml.use.publish.microservice
:切换为使用DITA-OT启用基于微服务的发布dxml.use.publish.microservice.native.pdf
:切换到启用基于微服务的本机PDF发布
<?xml version="1.0" encoding="UTF-8"?>
<jcr:root xmlns:jcr="http://www.jcp.org/jcr/1.0" xmlns:sling="http://sling.apache.org/jcr/sling/1.0"
jcr:primaryType="sling:OsgiConfig"
dxml.publish.microservice.url="https://adobeioruntime.net/api/v1/web/543112-guidespublisher/default/publishercaller.json"
dxml.use.publish.microservice="{Boolean}true"
dxml.use.publish.microservice.native.pdf="{Boolean}true"
/>