SSO-аутентификация
Single Sign-On (SSO) преавторизует ваших пользователей на вашей Доске идей Prioplan, избавляя от необходимости отдельного входа. Вы будете точно знать, кто создал каждую Идею.
👀 Демонстрация: Войдите в Prioplan, затем перейдите на https://ideas.prioplan.app/Prioplan-roadmap/summary. Вы увидите те же данные входа, email, имя, аватар и название компании, автоматически применённые.
Зачем использовать SSO
Идентификация пользователей: Понимание того, кто создал каждую Идею, предоставляет важный контекст для отзывов. SSO гарантирует, что вы точно знаете, какие пользователи оставили какие отзывы.
Приватные Доски идей требуют SSO. Виджет проверяет личность и разрешения каждого пользователя перед отображением любого контента. Без SSO виджет не загрузится ни для кого.
Бесшовный опыт: Пользователям не нужно входить отдельно, чтобы создавать Идеи или голосовать. Они могут подписаться на ваш ченджлог продукта одним кликом.
Безопасность: Верификация личности сохраняет конфиденциальность обсуждений и предотвращает подмену личности. Мы настоятельно рекомендуем всем клиентам Prioplan включить верификацию личности.
Получите код виджета
-
Перейдите в Settings (Настройки) Доски идей.
-
Выберите Embed (Встроить) и следуйте инструкциям.
Настройте параметры аутентификации
Расширьте код виджета параметрами user:
<script>
!function(b,c,f,d,a,e){b.dclsPxl||(((d=b.dclsPxl=function(){d.callMethod?d.callMethod.apply(d,arguments):d.queue.push(arguments)}).push=d).queue=[],(a=c.createElement("script")).async=!0,a.src=f,(e=c.getElementsByTagName("script")[0]).parentNode.insertBefore(a,e))}(window,document,"https://prioplan.app/js/widget.js")
dclsPxl("initWidget", {
appId: "_YOUR_APP_ID", // Required
boardId: "_YOUR_BOARD_ID", // Required
user: {
// required
email: "Your user Email",
hash: "User hash",
// optional
userID: "Your user ID",
name: "Your user Name",
avatar: "https://you-user-avatar-domain/avatar.png",
company: "Your user Company name",
},
});
</script>
Параметры пользователя
email (обязательно): Email пользователя, зарегистрированный в вашем продукте. Пользователи должны явно подписаться на ченджлог или обновления Доски идей с двойным подтверждением. Email виден только вашим коллегам в Prioplan внутри вашей доски.
hash (обязательно): Верификация безопасности личности. См. Генерация хеша пользователя ниже.
userID (опционально): Уникальный идентификатор вошедшего пользователя в вашем продукте.
name (опционально): Имя пользователя в вашем продукте. Отображается как имя голосующего и автора Идеи. Видно только вашим коллегам в Prioplan внутри вашей доски.
avatar (опционально): Аватар пользователя из вашего продукта. Отображается на вашей доске при оценке отзывов. Уточняет, кто голосовал и за что голосовал.
company (опционально): Название организации, если ваш продукт имеет групповые аккаунты. Рекомендуется для просмотра запросов Доски идей, сгруппированных по организациям.
Для индивидуальных отзывов клиентов
Если ваши отзывы поступают в основном от индивидуальных пользователей, а не от компаний, используйте данные пользователя для параметра company (например, имя или email пользователя). Это позволит вам работать с данными на уровне компании, где компания равна имени пользователя.
Добавьте кастомные поля
Добавьте кастомные контекстные данные для каждого Голосующего, чтобы собрать дополнительную информацию, такую как продажи, ARR или сегмент рынка. Отзывы могут различаться в зависимости от размера компании, рынка или возраста клиента.
В Prioplan сегментируйте по этим данным для более глубокого анализа паттернов отзывов пользователей.
Расширьте код виджета параметрами company:
<script>
!function(b,c,f,d,a,e){b.dclsPxl||(((d=b.dclsPxl=function(){d.callMethod?d.callMethod.apply(d,arguments):d.queue.push(arguments)}).push=d).queue=[],(a=c.createElement("script")).async=!0,a.src=f,(e=c.getElementsByTagName("script")[0]).parentNode.insertBefore(a,e))}(window,document,"https://prioplan.app/js/widget.js")
dclsPxl("initWidget", {
appId: "_YOUR_APP_ID", // Required
boardId: "_YOUR_BOARD_ID", // Required
user: {
// required
email: "Your user Email",
hash: "User hash",
// optional
userID: "Your user ID",
name: "Your user Name",
avatar: "https://you-user-avatar-domain/avatar.png",
company: {
id: 123, // Required
name: "My Super Client", // Required
customFields: {
prop1: "Active",
prop2: 1.8
}
}
},
});
</script>
company.id, company.name (обязательно): Обязательные поля при передаче кастомных контекстных данных.
customFields: Добавьте любое количество кастомных свойств. Например, status: "Active" или arr: 50000.
Генерация хеша пользователя
Чтобы позволить вашим пользователям немедленно голосовать за Идеи или создавать их на Доске идей Prioplan, передайте их данные в виджет. Prioplan проверяет, что пользователь пришёл с вашего сайта, проверяя хеш-ключ вместе с данными пользователя.
Хеш генерируется с помощью алгоритма HMAC с SHA-256. Используйте email пользователя в качестве значения и секретный ключ вашей организации в качестве ключа.
-
Найдите секретный ключ вашего приложения в глобальных настройках организации:
-
Проверьте генерацию хеша пользователя на https://www.freeformatter.com/hmac-generator.html
Примеры генерации хеша
Node.js:
const crypto = require("crypto");
// Put your secret key here (keep it private!)
// Notice: the one below is an example, yours will be different
const secretKey = "0fd72e0ff53b274293029fd1f3f40c92123123123easf2edq312edwe";
var email = "user@gmail.com";
var hash = crypto.createHmac("sha256", secretKey).update(email).digest("hex");
console.log("hash is:", hash);
PHP:
$secret = '0fd72e0ff53b274293029fd1f3f40c92123123123easf2edq312edwe';
$email = 'user@gmail.com';
$hash = hash_hmac('sha256', $email, $secret);
echo 'Hash is: '. $hash;
Используйте свой домен
По умолчанию ваша Доска идей расположена в домене prioplan.app, например https://ideas.prioplan.app/Prioplan-roadmap/summary.
Современные браузеры блокируют межсайтовые куки, делая идентификацию пользователей невозможной без кастомного домена.
Для бесшовного опыта работы с Доской идей разместите вашу Доску идей на том же домене второго уровня, что и ваш продукт, и страницы, где вы встраиваете виджеты. Это сохранит пользователей идентифицированными как внутри виджета, так и на Доске идей.
См. Настройка кастомного домена, чтобы настроить адрес вашей Доски идей, например ideas.yourcompanyname.com.
Пример межсайтовой аутентификации
Ваш домен — superproduct.com. Ваш продукт работает на app.superproduct.com, маркетинговые страницы на superproduct.com, а центр помощи на help.superproduct.com. Подключите вашу Доску идей Prioplan к тому же домену, например voting.superproduct.com.
Только тогда все ваши пользователи будут идентифицированы с одними и теми же учётными данными как в виджете, так и на Доске идей.