Аутентификация на основе SAML¶
Версия Glarus BI с открытым исходным кодом включает возможность настройки с помощью Входа через Google или LDAP, но некоторые планы позволяют подключить SSO на основе SAML или JWT. Интеграция SSO с Glarus BI позволяет вам:
- автоматически передавать пользовательские атрибуты из вашей системы единого входа в Glarus BI для включения изолированных программных сред данных,
- разрешить вашим пользователям доступ к Glarus BI без повторной аутентификации.
Включение системы единого входа на основе SAML¶
Перед началом настройки SAML убедитесь, что вы знаете пароль для своей учётной записи администратора Glarus BI. Если в процессе настройки что-либо будет неправильно сконфигурировано, на экране входа будет доступна опция «Резервный вход администратора».
Чтобы начать, перейдите в раздел «Настройки» панели администратора, затем нажмите на вкладку Аутентификация. Нажмите кнопку Настроить в разделе SAML на странице аутентификации, и вы увидите следующую форму:
Вверху не забудьте нажать на переключатель, чтобы включить аутентификацию SAML, иначе ничего не будет работать, даже если все ваши настройки верны.
Сама форма разбита на три части:
- Информация Glarus BI, которую вам нужно будет ввести в ваш поставщик удостоверений (IdP).
- Информация IdP, о которой вам нужно будет сообщить Glarus BI.
- Подписание SSO-запросов (необязательно).
Настройка SAML с вашим IdP¶
Сначала вам нужно убедиться, что все правильно настроено с вашим IdP. Каждый IdP обрабатывает настройку SAML по-своему.
Мы составили несколько руководств для наиболее распространённых поставщиков:
- Настраиваем SAML с Auth0
- Настраиваем up SAML с Azure AD
- Настраиваем up SAML с Google
- Настраиваем up SAML с Keycloak
- Настраиваем up SAML с Okta
Если вы не видите здесь своего поставщика удостоверений:
– Обратитесь к справочным документам вашего IdP по настройке SAML. Вам понадобится что-то вроде этого Руководство по SAML для OneLogin.
- Заполните форму SAML вашего IdP, используя информацию, содержащуюся в форме Glarus BI SAML. – Дополнительные сведения см. в следующем разделе Общая конфигурация SAML.
Общая конфигурация SAML¶
В верхней части формы SAML в Glarus BI содержится информация, необходимая для заполнения формы SAML вашего поставщика удостоверений личности, с кнопками, упрощающими копирование информации.
Однако имена полей в форме Glarus BI SAML не всегда будут соответствовать именам, используемым вашим поставщиком удостоверений. Мы предоставили описание каждого поля ниже, чтобы помочь вам сопоставить информацию из одного места в другое.
URL, на который IdP должен перенаправить¶
URL перенаправления — это веб-адрес, на который люди будут перенаправлены после входа в систему с помощью вашего IdP (провайдера). Чтобы перенаправить людей в вашу Glarus BI, ваш URL перенаправления должен быть URL сайта вашей Glarus BI с /auth/sso/
в конце.
Например, если URL вашего сайта Glarus BI "https://glarusbi.yourcompany.com", вы будете использовать "https://glarusbi.yourcompany.com/auth/sso/" в качестве URL перенаправления в форме SAML вашего IdP.
Разные провайдеры используют разные имена для URL перенаправления. Вот несколько распространённых примеров:
Провайдер | Название |
---|---|
Auth0 | Application Callback URL |
Okta | Single Sign On URL |
OneLogin | ACS (Consumer) URL |
Атрибуты пользователя¶
Glarus BI будет автоматически регистрировать людей, прошедших проверку подлинности вашим поставщиком удостоверений SAML. Для этого первое утверждение, возвращённое в ответе SAML поставщика удостоверений, должно содержать атрибуты для имени, фамилии и адреса электронной почты каждого человека.
Большинство IdP уже включают эти утверждения по умолчанию, но некоторые (например, Okta) должны быть настроены для их включения.
Как правило, вам потребуется вставить эти атрибуты пользователя (имя, фамилию и адрес электронной почты) в поля с пометками «Имя», «Атрибуты» или «Параметры».
Примечание
Если вы позволяете пользователям редактировать их email-адреса, обязательно обновляйте соответствующие email-адреса аккаунтов Glarus BI. Поддержание актуальности email-адресов защитит пользователей от потери доступа к своим аккаунтам.
Настройки подписи SSO-запросов (необязательно)¶
Это дополнительные настройки, которые вы можете указать, чтобы подписывать запросы SSO, чтобы гарантировать, что они не будут подделаны.
Включение аутентификации SAML в Glarus BI¶
Glarus BI теперь нужно будет знать некоторые вещи о вашем IdP. Вот разбивка каждой из настроек:
URL поставщика удостоверений SAML¶
Glarus BI будет перенаправлять запросы на вход на URL поставщика удостоверений, по которому люди будут входить в систему с помощью единого входа.
Разные IdP используют разные имена для URL поставщика удостоверений. Вот несколько распространённых примеров:
Провайдер | Название |
---|---|
Auth0 | Identity Provider Login URL |
Okta | Identity Provider Single-Sign On URL |
OneLogin | SAML 2.0 Endpoint (HTTP) |
Эмитент SAML Identity Provider¶
Это уникальный идентификатор IdP. Вы также можете увидеть, что он упоминается как «Идентификатор объекта» или «Эмитент». Утверждения от IdP будут содержать эту информацию, и Glarus BI проверит, соответствует ли она установленному вами значению.
Мы рекомендуем вам установить это значение, чтобы сделать вашу конфигурацию SAML более безопасной.
Провайдер | Название |
---|---|
Auth0 | Identity Provider Login URL |
Okta | Identity Provider Issuer |
OneLogin | Issuer URL |
Сертификат поставщика удостоверений SAML¶
Это закодированный сертификат, который Glarus BI будет использовать при подключении к URI IdP. Сертификат будет выглядеть как большой блок текста, который вы захотите аккуратно скопировать и вставить.
Ваш IdP-провайдер может попросить вас загрузить этот сертификат в виде файла (обычно .cer
или .pem
), который затем вам нужно будет открыть в текстовом редакторе, чтобы скопировать содержимое, а затем вставить его в поле в Glarus BI.
Обратите внимание, что текст вашего сертификата может включать комментарии в верхнем и нижнем колонтитулах, которые выглядят как -----BEGIN CERTIFICATE-----
и -----END CERTIFICATE-----
. Эти комментарии должны быть включены при вставке текста сертификата в Glarus BI.
Провайдер | Имя |
---|---|
Auth0 | Signing Certificate |
Okta | X.509 Certificate |
OneLogin | X.509 Certificate |
Настройки подписи SSO-запросов (необязательно)¶
Это дополнительные настройки, которые вы можете указать, чтобы подписывать запросы SSO, чтобы гарантировать, что они не будут подделаны. Кроме того, если ваш IdP шифрует ответы SAML, вам необходимо убедиться, что этот раздел заполнен.
Важное примечание: Если вы измените какой-либо из этих параметров либо во время первоначальной настройки, либо после редактирования существующего значения, вам потребуется перезапустить Glarus BI из-за способа чтения файла хранилища ключей.
Путь к хранилищу ключей SAML: абсолютный путь к файлу хранилища ключей, используемому для подписания запросов SAML.
Пароль хранилища ключей SAML: если это ещё не очевидно, это просто пароль для открытия хранилища ключей.
Псевдоним хранилища ключей SAML: псевдоним ключа, который Glarus BI должен использовать для подписания запросов SAML.
Синхронизация членства в группе с вашим IdP¶
Этот параметр позволяет назначать пользователей в группы Glarus BI на основе атрибута ваших пользователей в вашем IdP. Обратите внимание, что это может не соответствовать групповым функциям, предоставляемым вашим IdP — вам может потребоваться создать отдельный атрибут для ваших пользователей, чтобы установить их группу в Glarus BI, например metabaseGroups
.
Во-первых, вам нужно будет создать атрибут пользователя SAML, который вы будете использовать для указания, частью каких групп Glarus BI должен быть пользователь. Этот созданный пользовательский атрибут может быть строкой XML или списком строк XML. У разных IdP есть разные способы справиться с этим, но вам, вероятно, потребуется отредактировать свои профили пользователей или найти способ сопоставить группы пользователей со списком имён групп в Glarus BI.
Настройка схемы группы в Glarus BI¶
После того, как вы настроили все в своём провайдере SAML, осталось всего несколько простых шагов на стороне Glarus BI.
Для начала убедитесь, что переключатель синхронизации членства в группах установлен на «Включено». Затем нажмите «Редактировать сопоставления» > «Создать сопоставление». Введите имя одной из групп, которые вы ввели в качестве значений атрибута metabaseGroups
, затем нажмите кнопку «Добавить». Затем щёлкните раскрывающийся список, который появляется под заголовком «Группы», чтобы выбрать группу (группы) Glarus BI, в которую должны быть добавлены пользователи с этим конкретным значением «metabaseGroups». Затем нажмите Сохранить.
После этого введите имя пользовательского атрибута, который вы добавили в поставщика SAML. В этом случае мы сказали Okta, что атрибут metabaseGroups
должен называться GlarusBIGroupName
, так что это то, что мы введём в поле имени атрибута группы в Glarus BI.
Создание аккаунтов Glarus BI с SSO¶
Предупреждение
Лицензия ограничивает максимальное число учётных записей.
Каждый новый логин с использованием SSO автоматически создаёт новый аккаунт Glarus BI.
Учётные записи Glarus BI, созданные с использованием входа через внешнего поставщика удостоверений, не имеют паролей. Люди, которые регистрируются в Glarus BI с помощью IdP, должны продолжать в дальнейшем использовать IdP для входа в Glarus BI.
Отключение входа по паролю¶
После того, как вы настроили аутентификацию SAML, вы можете отключить возможность входа пользователей с помощью электронной почты и пароля. Для этого вернитесь на главную страницу настроек аутентификации и прокрутите вниз. Теперь будет виден переключатель, позволяющий отключить аутентификацию по паролю.
Уведомления о новых пользователях по электронной почте¶
Когда пользователи входят в Glarus BI в первый раз через SSO, для них автоматически создаётся учетная запись в Glarus BI, которая инициирует уведомление по электронной почте администраторам Glarus BI. Если вы не хотите, чтобы эти уведомления отправлялись, вы можете отключить этот переключатель в нижней части страницы аутентификации.
Пример кода с использованием SAML¶
Пример кода, использующего аутентификацию SAML, можно найти в репозиторий примеров SSO.