Включение единого входа
" Predis.ai SDK позволяет вам реализовать SSO для ваших пользователей. Если у вас есть пользователь, который уже вошел на ваш сайт, рекомендуется реализовать SSO, чтобы ваши пользователи автоматически входили в систему Predis.ai редактор.
Как это работает?
- Ваш пользователь входит на ваш сайт.
- A Predis.ai Для идентификации пользователя генерируется токен SSO. Это происходит на стороне сервера с использованием предоставленного ключа SSO.
- Сгенерированный токен SSO передается в конфигурации (как
embedToken
) когда создание объекта от Predis.ai SDK.
Генерация токена SSO JWT на сервере
A Predis.ai Токен SSO — это токен JWT, который хранит данные о пользователе и подписан вашим уникальным паролем. Predis.ai Ключ единого входа.
Код Python для создания JWT
- Установить библиотеку
pip install pyjwt
- Создать JWT
jwt_token = jwt.encode({"aud": YOUR_APP_ID, "user_id": USER_ID},
SSO_KEY,
algorithm='HS256')
Полезная нагрузка JWT
Полезная нагрузка для JWT должна быть следующей:
{
"aud": "your_app_id", // App ID obtained from the Predis.ai account
"user_id": "user_id" // email or any unique id of your user
}
Полезная нагрузка содержит следующие параметры:
AUD
строка. Уникальный идентификатор приложения.
user_email
строка. Уникальный идентификатор пользователя.
Примечание о безопасности
Данные единого входа передаются в виде закодированного токена, известного как JWT (Веб-токен JSON) в URL-адресе — токен представляет собой буквенно-цифровую строку длиной около 150 символов. Токен подписывается специальным ключом (Predis.ai SSO Key), который является уникальным для каждой учетной записи, и только администраторы учетной записи имеют к нему доступ. Данные, передаваемые в токене, представляют собой user_id и app_id — никакие пароли не передаются, не кодируются и т. д. Затем токен декодируется Predis.ai серверы и подпись проверяются, чтобы убедиться, что токен был подписан Predis.ai SSO-ключ, связанный с учетной записью. Если токен не был подписан правильным ключом, вход в SSO не удастся.