Как настроить единый вход (SSO) по протоколу OAuth в Shopify, используя AWS Cognito в качестве поставщика идентификации?
Обзор
miniOrange позволяет AWS Cognito выступать в качестве поставщика идентификационных данных (IdP), предоставляя пользователям возможность выполнять следующие действия: Единый вход (SSO) в магазин Shopify с использованием учетных данных AWS Cognito. Это поддерживает Учетные записи клиентов Shopify, а также старые учетные записи., работает с обоими Магазины Shopify Plus и обычные магазиныи подходит для B2B-магазинов с требованиями к авторизации для B2B-клиентов.
Наше приложение совместимо со всеми поставщиками идентификации, поддерживающими SAML и OAuth. Наше решение позволяет Единый доступ SSO для потребителей, оптовиков, сотрудников и корпоративных клиентов., обеспечивая бесперебойный и безопасный вход в систему для каждой группы пользователей.
Настройте единый вход (SSO) [OAuth] в Shopify, используя хранилище пользователей Cognito в качестве поставщика идентификации (IdP).
Для настройки единого входа (SSO) в Shopify через протокол OAuth с использованием хранилища пользователей Cognito в качестве поставщика идентификационных данных (IdP) выполните действия, описанные здесь.
Предварительные условия: установка приложения.
- Войдите в панель администратора Shopify.
- Перейдите в раздел Приложения → Магазин приложений Shopify.
- Найдите Хранить как IDP - вход через SSO.
- Нажмите «Установить», чтобы добавить приложение в свой магазин.
- Откройте приложение из раздела «Приложения», чтобы начать настройку AWS Cognito SSO.
Пошаговое руководство по настройке единого входа (SSO) в AWS Cognito с использованием магазина Shopify в качестве поставщика идентификационных данных (IDP).
Шаг 1: Получите URL-адрес обратного вызова из приложения Shopify SSO.
- Перейдите в свой магазин Shopify и найдите... Приложение раздела и нажмите Единый вход (SSO) Приложение.
- Нажмите на Добавить поставщика удостоверений кнопка для добавления вашего IDP.
- Выбрать ОАут 2.0 протокол.
- Теперь выберите AWS Когнито из списка внутренне перемещенных лиц.
- Скопируйте URL обратного вызова OAuth и держите его под рукой, так как он понадобится на следующих этапах.
Шаг 2: Настройка Shopify в качестве поставщика услуг (SP) в AWS Cognito
- Перейдите на Консоль Амазон и зарегистрируйтесь/войдите в свою учетную запись, чтобы настроить AWS Cognito.
- Найдите Cognito в Сервисы AWS строка поиска, как показано ниже.
Примечание: Если у вас уже есть пул пользователей , выполните действия, описанные здесь , в противном случае выполните действия, описанные ниже.
- Нажмите на Создать пул пользователей кнопку для создания нового пула пользователей.
- Выберите Тип приложения как Традиционное веб-приложениеУкажите название для вашего приложения и выберите атрибуты из вашего пула пользователей, которые будут использоваться в процессе входа в систему. Выберите необходимые атрибуты для процесса регистрации из списка. Обязательные атрибуты для регистрации .
- Вставьте URL обратного вызова скопировано из Шаг 1 в возвратного URL поле под Добавить обратный URL раздел. Нажми на Создавай .
- Прокрутите вниз и нажмите Перейти к обзору .
- Чтобы настроить, как ваш пул пользователей отправляет сообщения электронной почты пользователям, перейдите к Методы аутентификации под Аутентификация и нажмите Редактировать в разделе «Электронная почта».
- Здесь вы можете добавить адрес электронной почты, который ваша база пользователей будет использовать для отправки писем пользователям. Нажмите на Сохранить изменения.
- Перейдите в Клиенты приложений в разделе Области применения раздел и выберите свой Клиент приложенияЕсли у вас нет приложения, нажмите на Создать клиентское приложение .
- Скопируйте идентификатор клиента и Секрет клиента и сохраните их под рукой, так как они понадобятся на дальнейших этапах.
- Перейдите на сайт Разрешения атрибутов Вкладка. Нажать на Редактировать и выберите нужные вам атрибуты в процессе регистрации. Нажмите на Сохранено.
- Теперь перейдите к Страницы входа и нажмите Редактировать кнопку, как показано на рисунке ниже.
- Убедитесь, что URL обратного вызова добавляется в поле URL под Разрешенные URL-адреса обратного вызова В разделе «Поставщик идентификационных данных» в качестве поставщика идентификационных данных выбран следующий поставщик: Пул пользователей Cognito.
- Выбрать Предоставление кода авторизации под Типы грантов OAuth 2.0, Под Области OpenID Connect раздел выбраны области Электронная почта, OpenID и профиль(Пожалуйста, обратитесь к изображениям ниже) Нажмите на Сохранить изменения .
- Перейдите на сайт Пользователи в разделе Управление пользователями раздел и нажмите Создать пользователя.
- Введите данные, такие как адрес электронной почты, номер телефона и пароль. Нажмите Создать пользователя чтобы сохранить детали.
- Перейдите на сайт Домен в разделе Брендинг скопируйте в этот раздел полное доменное имя. {ваше доменное имя}.auth.{название региона}.amazoncognito.comЭти данные следует ввести в поле «Конечные точки» в приложении Shopify Single Sign-On (SSO), поэтому держите их под рукой.
Вы завершили настройку AWS Cognito для реализации единого входа (SSO) в Shopify с использованием учетных данных AWS Cognito.
Шаг 3: Настройте AWS Cognito в качестве поставщика идентификационных данных (IDP) в Shopify.
- Вернитесь к miniOrange Single Sign On-SSO Приложение.
- Нажмите на Добавить поставщика удостоверений кнопка для добавления вашего IDP.
- Выбрать ОАут 2.0 протокол.
- Из списка внутренне перемещенных лиц выберите AWS Когнито.
- Теперь заполните необходимые данные, например: Идентификатор клиента, секретный ключ клиента, конечные точки и область действия..
- Для настройки значений воспользуйтесь таблицей ниже.
- Примечание: Домен Cognito можно найти по адресу: Шаг 2.
| Отображаемое имя IDP | [Введите любое название приложения на ваш выбор] |
| Авторизовать конечную точку | https://{cognito-app-domain}/oauth2/authorize |
| Конечная точка токена доступа | https://{cognito-app-domain}/oauth2/token |
| Конечная точка информации о пользователе | https://{cognito-app-domain}/oauth2/userInfo |
| URI JWKS (необязательно) | https://cognito-idp.{region}.amazonaws.com/{userPoolId}/.well-known/jwks.json |
| идентификатор клиента | с шага 2 |
| Секрет клиента | с шага 2 |
| Объем | openid (введите этот текст точно так, как показано) |
- Теперь вы можете нажать на Сохранено.
Вы завершили настройку на стороне Shopify для обеспечения единого входа (SSO) между AWS Cognito и Shopify.
Шаг 4: Проверить соединение
-
После сохранения конфигурации IDP вы будете перенаправлены на страницу...
Проверить подключение шаг.
Перед сопоставлением или получением атрибутов выполните проверку соединения; проверка соединения гарантирует правильность конфигурации вашего поставщика идентификации (IDP). - Нажмите на Проверить подключение .
- После ввода действительных учетных данных AWS Cognito появится всплывающее окно, показанное на скриншоте ниже.
- Нажмите на Получение атрибутов кнопка для получения атрибута IDP.
Шаг 5: Сопоставление атрибутов
- Нажмите на + Сопоставление атрибутов кнопка для сопоставления атрибутов между Shopify и AWS Cognito.
- Сопоставьте атрибуты, используя таблицу ниже:
| Название атрибута в Shopify | Выберите ключ атрибута клиента Shopify, по которому вы хотите синхронизировать входящие значения атрибутов из IDP. |
| Тип атрибута | Атрибут IDP |
| Значение атрибута | Выберите ключ атрибута, полученный от вашего поставщика идентификации (IDP), и который вы хотите синхронизировать в Shopify. |
- Нажмите на Далее.
Шаг 6: Включение и тестирование настроек единого входа (SSO).
Выберите тип магазина Shopify:
- Магазин Non Plus
- Плюс магазин
Таким образом, вы успешно настроили единый вход (SSO) Shopify AWS Cognito, установив AWS Cognito в качестве поставщика идентификации (OAuth IdP) и Shopify в качестве клиента OAuth (поставщика услуг) с помощью нашего приложения для единого входа Shopify - SSO Login. Это решение гарантирует, что вы сможете развернуть безопасный доступ к вашему магазину Shopify с использованием учетных данных AWS Cognito в течение нескольких минут.
Поддерживаемые интеграции и функции
Дополнительные возможности ➔Диагностика неисправностей
Я выполнил все шаги по настройке IDP, но где можно проверить SSO?
Чтобы настроить единый вход (SSO) в Shopify с помощью предпочитаемого поставщика идентификации (IDP), выполните следующие действия: Следуйте инструкциям, изложенным здесь.
Я установил приложение Shopify SSO. Я нажал на опцию «НАСТРОЙКА IDP», но ничего не открылось.
Возможно, в браузере заблокирована переадресация на другой сайт. Пожалуйста, выполните следующие действия для решения проблемы.
После проведения единого входа (SSO) я хочу, чтобы мои клиенты перенаправлялись на страницу коллекций или предложения со скидкой.
Следуйте инструкциям, изложенным здесь , чтобы перенаправить клиента на страницу коллекций/корзины или любую другую страницу.
Как включить функцию автоматического перенаправления приложения SSO на IDP в моем магазине Shopify?
Для включения функции автоматического перенаправления на поставщика идентификации необходимо перейти на корпоративный тарифный план приложения SSO. Для включения этой функции выполните действия, описанные здесь .
Часто задаваемые вопросы (FAQ):
Дополнительные часто задаваемые вопросы ➔
Могу ли я использовать AWS Cognito для включения единого входа (SSO) для доступа к моему магазину Shopify только для сотрудников?
Да, вы можете использовать AWS Cognito в качестве поставщика идентификации (IdP) для включения единого входа (SSO) для доступа к вашему магазину Shopify только для сотрудников. Это гарантирует, что войти в систему смогут только пользователи, прошедшие аутентификацию через ваш пул пользователей Cognito (т. е. ваши сотрудники).
Как настроить AWS Cognito для работы с приложением Shopify SSO для входа в систему только для сотрудников:В AWS Cognito:
Создайте пул пользователей Cognito и добавьте своих сотрудников в качестве пользователей вручную или путем федерации с внешним каталогом (например, SAML или Active Directory).
Создайте клиентское приложение и настройте параметры SAML, убедившись, что атрибуты пользователя, такие как электронная почта, имя или отдел, включены в утверждение SAML.
В Cognito также можно использовать группы, роли или пользовательские атрибуты для идентификации сотрудников-пользователей. В приложении Shopify SSO:Импортируйте метаданные из вашего пула пользователей Cognito, чтобы настроить Shopify в качестве поставщика услуг (SP), и включите управление доступом на основе домена или группы, чтобы разрешить вход в систему только пользователям, соответствующим определенным критериям сотрудников (например, @yourcompany.com).
Эта настройка гарантирует, что в ваш магазин Shopify смогут войти только авторизованные сотрудники AWS Cognito, блокируя при этом доступ для внешних или неавторизованных пользователей.
Возможно ли использовать один и тот же пул пользователей AWS Cognito в нескольких магазинах Shopify?
Да, вы можете использовать один и тот же пул пользователей AWS Cognito для включения единого входа (SSO) в нескольких магазинах Shopify. Это идеально подходит, если вам нужна централизованная система идентификации для управления доступом пользователей к различным витринам — например, к региональным магазинам, партнерским порталам или франчайзинговым точкам.
Как настроить единый вход AWS Cognito для нескольких магазинов Shopify:В AWS Cognito:
Создайте единый пул пользователей Cognito со всеми авторизованными пользователями, настройте клиентское приложение с поддержкой SAML и URL-адресами обратного вызова для каждого магазина Shopify, а также включите атрибуты пользователей (например, электронную почту, роли) в утверждение SAML для контроля доступа.
В каждом магазине Shopify (через приложение SSO):Установите приложение Shopify SSO в каждом магазине Shopify и добавьте AWS Cognito в качестве поставщика идентификации. Предоставьте одинаковые метаданные Cognito SAML в каждом магазине.
Эта конфигурация обеспечивает бесперебойный централизованный вход пользователей в систему на нескольких витринах Shopify, сохраняя при этом единообразный пользовательский интерфейс и унифицированное управление идентификацией через AWS Cognito.
Как настроить единый выход из системы (SLO) в AWS Cognito на Shopify?
Да, вы можете настроить единый выход из системы (SLO) с помощью AWS Cognito в своем магазине Shopify, используя приложение Shopify SSO. Это гарантирует, что при выходе пользователя из магазина Shopify он также выйдет из системы AWS Cognito, обеспечивая бесперебойный и безопасный выход из системы между сессиями.
Как настроить единый выход из системы (Single Logout) с помощью AWS Cognito и Shopify:В AWS Cognito:
Настройте пул пользователей Cognito с использованием домена и включите конечную точку выхода, например: https://
Убедитесь, что параметр logout_uri соответствует одному из разрешенных URI перенаправления в настройках вашего приложения.
В приложении miniOrange Shopify SSO:Включите единый выход из системы (SLO) в приложении Shopify SSO, установите URL-адрес выхода из Cognito в качестве конечной точки выхода из IdP, и приложение будет обрабатывать как инициированные поставщиком услуг (SP), так и инициированные поставщиком услуг (IdP) выходы из системы, чтобы гарантировать, что пользователи выходят из системы как в Shopify, так и в Cognito.
Как включить авторизацию через AWS Cognito только для определенных групп клиентов или тегов в Shopify?
С помощью приложения Shopify SSO вы можете ограничить доступ к AWS Cognito SSO только для определенных групп клиентов или тегов в Shopify.
Как это настроить:В AWS Cognito:
Добавьте пользовательский атрибут или группу (например, shopifyAccess: true или userGroup: wholesale) для соответствующих пользователей. Убедитесь, что этот атрибут включен в утверждение SAML, отправляемое в Shopify.
В приложении Shopify SSO:Настройте правила доступа, чтобы разрешать вход в систему только при наличии у пользователя определенных атрибутов (например, определенных ролей, тегов или доменов электронной почты). Вы можете сопоставить атрибуты пользователей Cognito с тегами клиентов Shopify и ограничить доступ на их основе.
Это гарантирует, что только пользователи, соответствующие необходимым условиям, например, принадлежащие к группе «VIP» или «оптовик», смогут войти в магазин Shopify через Cognito.
Спасибо за ваш ответ. Мы свяжемся с вами в ближайшее время.
Что-то пошло не так. Пожалуйста, отправьте запрос ещё раз.


