IMS访问令牌无法在多个Adobe Commerce环境中使用

使用OAuth服务器到服务器凭据生成的IMS访问令牌在一个Adobe Commerce环境中成功工作,但在另一个环境中失败并出现401未授权错误。 发生此行为是因为每个Commerce环境都需要其自己的IMS配置以及与令牌关联的技术帐户的显式权限。 要解决此问题,请为每个环境配置IMS集成,创建单独的OAuth凭据,并将所需的管理员权限分配给每个Commerce实例中的技术帐户。

描述 description

环境

  • 产品: Adobe Commerce Cloud
  • 版本: 2.4.7
  • 身份验证类型:具有IMS集成的OAuth服务器到服务器

问题/症状

  • IMS访问令牌适用于一个Commerce环境(例如生产环境)中的REST API调用。
  • 同一令牌在另一个环境(例如暂存或QA)中失败并出现401未授权错误。
  • REST API响应包含错误消息:使用者无权访问%resources。

解决方法 resolution

请按照以下步骤修复问题:

  1. 在需要REST API访问权限的每个Commerce环境中启用和配置Adobe IMS集成。
  2. 为Adobe Developer Console中的每个环境创建单独的OAuth服务器到服务器凭据。 有关设置特定于环境的OAuth服务器到服务器凭据以及生成IMS访问令牌的详细指导,请参阅服务器到服务器身份验证
  3. 使用特定于该环境的客户端ID和客户端密钥生成IMS访问令牌。
  4. 将与IMS令牌关联的技术帐户添加为该环境的Commerce管理员用户。
  5. 将所需的管理员角色和权限分配给技术帐户。
  6. 对每个环境端点进行REST API调用时,请使用正确的IMS访问令牌。
  7. 确认REST API请求成功完成,没有​401未授权错误

相关阅读

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f