Подготовка учётных записей через SCIM
Configuring SCIM User Provisioning
ScribbleMaps поддерживает SCIM 2.0 (System for Cross-domain Identity Management) для автоматического создания и удаления пользователей. Это позволяет автоматически синхронизировать пользователей из вашего Identity Provider (IdP) в ScribbleMaps, обеспечивая соответствие состава команды каталогу вашей организации.
SCIM provisioning доступно на team.scribblemaps.com и полностью бесплатно.
Table of Contents
- Что такое SCIM?
- Перед началом работы
- Шаг 1: Включите SCIM в ScribbleMaps
- Шаг 2: Сгенерируйте Bearer Token
- Шаг 3: Настройте своего Identity Provider
- Шаг 4: Настройте Default Product Assignment
- Шаг 5: Протестируйте и назначьте пользователей
- Руководства для конкретных провайдеров
- Поддерживаемые операции SCIM
- Управление жизненным циклом пользователей
- Устранение неполадок
What is SCIM?
SCIM (System for Cross-domain Identity Management) — это открытый стандарт, который позволяет автоматически:
- Создавать пользователей (Provision users) — автоматически создавать учетные записи ScribbleMaps при назначении пользователей в вашем IdP
- Обновлять пользователей — синхронизировать информацию о пользователях (имя, email)
- Удалять пользователей (Deprovision users) — автоматически деактивировать учетные записи при удалении пользователей из вашего IdP
- Управлять ролями — назначать пользователям роли Admin или Member через членство в группах
SCIM работает совместно с SSO (SAML/OIDC) для обеспечения полного управления жизненным циклом удостоверений.
Before You Begin
- Вы должны быть Team Owner для настройки SCIM
- Вам нужен доступ к консоли администратора вашего Identity Provider
- Ваш IdP должен поддерживать SCIM 2.0 (Okta, Microsoft Entra ID, OneLogin, JumpCloud и т. д.)
- Мы рекомендуем настроить SSO перед SCIM для наилучшего взаимодействия с пользователем
Step 1: Enable SCIM in ScribbleMaps
- Войдите на team.scribblemaps.com
- Перейдите в раздел SCIM Provisioning (левая боковая панель)
- Переключите Enable SCIM в положение ON
Примечание: Вам потребуется сгенерировать bearer token, прежде чем SCIM можно будет полностью включить.
Step 2: Generate a Bearer Token
Bearer token аутентифицирует вашего Identity Provider в ScribbleMaps.
- На странице настроек SCIM нажмите Generate Token
- Немедленно скопируйте токен и сохраните его в надежном месте
Важные примечания по безопасности:
- Токен отображается только один раз — если вы его потеряете, вам придется сгенерировать новый
- Относитесь к этому токену как к паролю — любой, у кого есть токен, может управлять пользователями вашей команды
- Вы можете отозвать и сгенерировать токен заново в любое время, если он будет скомпрометирован
- Отзыв токена немедленно прекращает все операции SCIM до тех пор, пока не будет настроен новый токен
Step 3: Configure Your Identity Provider
Используйте следующие данные для настройки ScribbleMaps в качестве приложения SCIM в вашем IdP:
| Setting | Value |
|---|---|
| SCIM Base URL | https://api.scribblemaps.com/scim/v2 |
| Authentication Method | HTTP Header / Bearer Token |
| Authorization Header | Bearer YOUR_TOKEN_HERE |
| Unique Identifier |
userName (адрес электронной почты) |
SCIM Endpoints Reference
| Endpoint | Purpose |
|---|---|
/scim/v2/Users |
Создание и управление пользователями |
/scim/v2/Groups |
Управление членством в ролях/группах |
/scim/v2/ServiceProviderConfig |
Возможности SCIM (обнаружение) |
/scim/v2/ResourceTypes |
Поддерживаемые типы ресурсов (обнаружение) |
/scim/v2/Schemas |
Схемы пользователей и групп (обнаружение) |
Step 4: Set Default Product Assignment (Optional)
Вы можете автоматически назначать лицензию на продукт пользователям при их создании через SCIM:
- На странице настроек SCIM найдите Default Product Assignment
- Выберите продукт:
- None — пользователи создаются без продукта (назначьте вручную позже)
- Viewer — доступ только для просмотра
- Pro Basic — стандартные функции редактирования
- Pro Business — полный доступ к функциям
- Нажмите Save
Примечание: Пользователям будет назначен продукт только при наличии свободных мест. Если свободных мест нет, пользователь создается, но остается без назначенного продукта.
Step 5: Test and Assign Users
- В вашем Identity Provider используйте функцию Test Connection для проверки подключения SCIM
- Назначьте тестового пользователя приложению ScribbleMaps в вашем IdP
- Убедитесь, что пользователь появился в списке участников вашей команды ScribbleMaps
- После подтверждения назначьте дополнительных пользователей или группы по мере необходимости
Provider-Specific Guides
Okta
- В Okta Admin Console перейдите в Applications > Browse App Catalog
- Найдите «SCIM 2.0 Test App (Header Auth)» или создайте собственное приложение SCIM
- Перейдите на вкладку Provisioning > Configure API Integration
- Установите флажок Enable API integration
- Настройте:
-
SCIM 2.0 Base URL:
https://api.scribblemaps.com/scim/v2 - OAuth Bearer Token: вставьте ваш токен SCIM от ScribbleMaps
-
SCIM 2.0 Base URL:
- Нажмите Test API Credentials для проверки
- Перейдите в Provisioning > To App и включите:
- Create Users
- Update User Attributes
- Deactivate Users
- Перейдите на вкладку Assignments, чтобы назначить пользователей или группы
Microsoft Entra ID (Azure AD)
- В Azure Portal перейдите в Microsoft Entra ID > Enterprise Applications
- Выберите ваше приложение ScribbleMaps (или создайте его)
- Перейдите в Provisioning > Get Started
- Установите Provisioning Mode в значение Automatic
- В разделе Admin Credentials:
-
Tenant URL:
https://api.scribblemaps.com/scim/v2 - Secret Token: вставьте ваш токен SCIM от ScribbleMaps
-
Tenant URL:
- Нажмите Test Connection для проверки
- Настройте Mappings для атрибутов пользователей
- Установите Provisioning Status в положение On
- Перейдите в Users and groups, чтобы назначить пользователей
OneLogin
- В OneLogin Admin перейдите в Applications > Add App
- Найдите «SCIM Provisioner with SAML (SCIM v2 Core)» или аналогичное приложение
- Перейдите на вкладку Configuration
- Настройте:
-
SCIM Base URL:
https://api.scribblemaps.com/scim/v2 - SCIM Bearer Token: вставьте ваш токен SCIM от ScribbleMaps
-
SCIM Base URL:
- Перейдите на вкладку Provisioning и включите provisioning
- Перейдите на вкладку Users, чтобы назначить пользователей
JumpCloud
- В JumpCloud Admin перейдите в SSO Applications
- Нажмите +, чтобы добавить новое приложение
- Выберите Custom SCIM
- Настройте:
-
Base URL:
https://api.scribblemaps.com/scim/v2 - Token Key: вставьте ваш токен SCIM от ScribbleMaps
- Authentication: Bearer Token
-
Base URL:
- Нажмите Test Connection
- Настройте сопоставление атрибутов (attribute mappings)
- Назначьте группы пользователей приложению
Supported SCIM Operations
User Operations
| Operation | Method | Supported | Description |
|---|---|---|---|
| List Users | GET /Users | Yes | Получение всех пользователей с пагинацией и фильтрацией |
| Get User | GET /Users/{id} | Yes | Получение конкретного пользователя по ID |
| Create User | POST /Users | Yes | Создание нового пользователя |
| Replace User | PUT /Users/{id} | Yes | Полное обновление атрибутов пользователя |
| Update User | PATCH /Users/{id} | Yes | Частичное обновление атрибутов пользователя |
| Delete User | DELETE /Users/{id} | Yes | Деактивация пользователя (мягкое удаление) |
Group Operations
| Operation | Method | Supported | Description |
|---|---|---|---|
| List Groups | GET /Groups | Yes | Возвращает группы ролей Admin и Member |
| Get Group | GET /Groups/{id} | Yes | Получение группы со списком участников |
| Update Group | PATCH /Groups/{id} | Yes | Добавление/удаление участников из групп ролей |
| Create Group | POST /Groups | No | Не поддерживается (роли фиксированы) |
Supported User Attributes
| SCIM Attribute | ScribbleMaps Field | Required |
|---|---|---|
userName |
Адрес электронной почты | Yes |
externalId |
Внешний идентификатор IdP | No |
name.givenName |
Имя | No |
name.familyName |
Фамилия | No |
displayName |
Отображаемое имя | No |
active |
Статус учетной записи | No |
emails[].value |
Адрес электронной почты | No |
Supported Filters
| Filter | Example |
|---|---|
| Фильтр по email | userName eq "[email protected]" |
| Фильтр по внешнему ID | externalId eq "12345" |
| Фильтр по статусу | active eq true |
User Lifecycle Management
When a User is Provisioned
- В ScribbleMaps создается новая учетная запись участника команды
- Информация о пользователе (имя, email) заполняется из вашего IdP
- Если настроен продукт по умолчанию и есть свободные места, лицензия назначается автоматически
- Пользователь может немедленно войти в систему через SSO (если настроено)
When a User is Updated
- Атрибуты пользователя (имя, отображаемое имя) обновляются в соответствии с вашим IdP
- Изменения email синхронизируются (если только пользователь не связал свою учетную запись)
When a User is Deprovisioned
- Учетная запись пользователя деактивируется (мягкое удаление)
- Все лицензии на продукты удаляются, освобождая места
- Все активные сессии немедленно аннулируются
- Пользователь больше не может войти в систему
- Данные пользователя и карты сохраняются (не удаляются)
- Учетная запись может быть повторно активирована, если пользователь будет создан заново
Role Management via Groups
ScribbleMaps предоставляет две группы ролей через SCIM:
| Group ID | Role | Permissions |
|---|---|---|
admin |
Administrator | Управление настройками команды, пользователями и выставлением счетов |
member |
Member | Стандартный доступ участника команды |
Чтобы назначить пользователя администратором, добавьте его в группу admin с помощью SCIM PATCH. Роль Owner не может быть изменена через SCIM.
Troubleshooting
Common Issues
"401 Unauthorized" or "Invalid token"
- Убедитесь, что bearer token указан правильно и не был отозван
- Убедитесь, что токен передается в заголовке Authorization как
Bearer YOUR_TOKEN - Проверьте, не истек ли срок действия токена (если он был установлен)
- При необходимости сгенерируйте новый токен
"409 Conflict" - User already exists
- Пользователь с таким email уже существует в вашей команде
- Если существующий пользователь был деактивирован, SCIM автоматически активирует его снова
- Проверьте наличие дубликатов адресов электронной почты в вашем IdP
"400 Bad Request" - Missing required field
- Убедитесь, что
userName(email) включен в запрос - Убедитесь, что формат email корректен
- Проверьте конфигурацию сопоставления атрибутов вашего IdP
Users created but no product assigned
- Проверьте, настроен ли продукт по умолчанию в настройках SCIM
- Убедитесь, что у вас есть свободные места для продукта по умолчанию
- Пользователям можно назначить продукты вручную в Team Settings
User changes not syncing
- Некоторые IdP выполняют синхронизацию по расписанию (например, каждые 40 минут для Azure AD)
- Попробуйте запустить синхронизацию вручную в вашем IdP
- Убедитесь, что SCIM все еще включен, а токен действителен
Test connection fails
- Убедитесь, что SCIM Base URL указан точно как
https://api.scribblemaps.com/scim/v2 - Убедитесь в отсутствии косых черт на конце или опечаток
- Убедитесь, что ваша сеть/брандмауэр разрешает исходящие HTTPS-соединения с api.scribblemaps.com
Need Help?
Если у вас возникли проблемы с SCIM provisioning, пожалуйста, свяжитесь с нашей службой поддержки, указав:
- Имя вашей команды (Team name)
- Используемый вами Identity Provider
- Любые сообщения об ошибках из журналов создания пользователей (provisioning logs) вашего IdP
- Скриншоты вашей конфигурации SCIM (со скрытым токеном)
Мы готовы помочь вам настроить SCIM provisioning для вашей организации.
Последнее обновление