Можно ли выполнять авторизованные вызовы SFCC (Demandware) OCAPI / shop, используя внешнюю аутентификацию клиента (например, токен доступа Cognito)?
Сегодня мы используем SFCC для электронной коммерции, и он также выступает в качестве нашего основного поставщика удостоверений. Мы находимся в процессе миграции пользователей и перехода на использование внешнего поставщика удостоверений Amazon Cognito.
После миграции мы надеялись, что сможем выполнить аутентификацию с использованием внешнего идентификатора IDP (Cognito) и использовать выпущенные токены Cognito Bearer для вызова API магазина.
Это возможно? Или для API магазина требуется JWT, выпущенный SFCC?
1 ответ
Я не делал этого раньше, но есть относительно новый способ аутентификации клиентов из "доверенной системы". Вы можете найти дополнительную информацию об этом здесь: https://documentation.b2c.commercecloud.salesforce.com/DOC2/index.jsp?topic=%2Fcom.demandware.dochelp%2FOCAPI%2Fcurrent%2Fusage%2FJWT.html
Если ваше клиентское приложение управляет вашими учетными данными клиента, оно может получить JWT для зарегистрированного клиента с помощью ресурса /customers/auth/trustedsystem. Поскольку этот API использует токен OAuth для идентификации клиентского приложения, мы настоятельно рекомендуем вам использовать его только при межсистемной интеграции, когда клиентское приложение хранит свой собственный токен OAuth в секрете.
После того, как вы сможете аутентифицировать клиента, вы можете использовать функциональность Session Bridge для преобразования этого JWT в файл cookie сеанса.
Удачи!