Пользователи, группы и права доступа Redash
Добавление изображения профиля
Если вы вошли в Redash с учетной записью Google, Redash автоматически получит изображение профиля вашей учетной записи Google. В качестве альтернативы Redash использует Gravatar для работы с изображениями профилей.
Если у вас нет учетной записи Gravatar, зарегистрируйтесь на Gravatar с помощью адреса электронной почты, который вы использовали для входа в Redash.
Изображения Gravatar кэшируются вашим браузером. После регистрации или обновления ваш Gravatar появится на Redash в течение 5 минут после изменения после обновления страницы.
Варианты аутентификации (SSO, Google OAuth, SAML)
Настройки аутентификации
Параметры аутентификации настраиваются с помощью пользовательского интерфейса и переменных среды. Для внесения изменений в пользовательский интерфейс перейдите на вкладку Settings > General tab.
Просматривать и изменять параметры аутентификации могут только администраторы. Некоторые параметры аутентификации не будут отображаться в пользовательском интерфейсе до тех пор, пока не будут установлены соответствующие переменные окружения.
Вход по паролю
По умолчанию Redash аутентифицирует пользователей по адресу электронной почты и паролю. Это называется "Вход по паролю" на вкладке Settings > General tab. После включения альтернативного метода аутентификации можно отключить вход по паролю.
Вход в систему через Google (OAuth)
Вы можете настроить Redash таким образом, чтобы любой пользователь с учетной записью Google из указанного вами домена (доменов) мог войти в Redash. Если у них еще нет учетной записи, она будет создана автоматически.
Выполните следующие шаги, чтобы изменить переменные окружения и настройки пользовательского интерфейса для включения Google Login:
- Зарегистрируйте свой экземпляр Redash в Google org, зайдя в облачную консоль. Если вы еще не создали проект для разработчиков, необходимо создать его. Затем выполните процедуру Create Credentials.
- Установите Authorized Redirect URL(s) (авторизованный URL-адрес перенаправления) на
http(s)://${REDASH_BASEURL}/oauth/google_callback.
- В процессе настройки вы получите идентификатор клиента и его секрет. Используйте их для установки переменных окружения REDASH_GOOGLE_CLIENT_ID и
REDASH_GOOGLE_CLIENT_SECRET.
- Перезапустите свой экземпляр Redash.
- Перейдите в раздел Settings > General. Заполните поле "Allowed Google Apps Domains" доменами, которые должны иметь возможность входа в ваш экземпляр Redash.
SAML 2.0
Благодаря библиотеке pysaml компания Redash может аутентифицировать пользователей с помощью любой IDP, поддерживающей протокол SAML 2.0.
Настройка IDP
Для вашей IDP потребуется URL обратного вызова, на который будут перенаправляться пользователи после аутентификации. Этот URL будет находиться по адресу /saml/callback?org_slug=<org_name>. Название организации используется по умолчанию, если вы не изменили его при настройке экземпляра Redash.
Также необходимо сопоставить пользовательские поля FirstName, LastName и RedashGroups (необязательно).
В качестве NameIDFormat в Redash используется emailAddress.
Конфигурирование Redash
На вкладке Settings > General можно указать, включен ли SAML, и если да, то какой – Static (статический) или Dynamic (динамический). В чем разница?
Некоторые IDP предоставляют URL-адреса метаданных для настройки параметров SAML. Okta называет такую схему "динамической" конфигурацией. Здесь мы заимствовали их терминологию.
Однако другие IDP не предоставляют таких метаданных URL, и альтернативой является "статическое" указание SSO URL, Entity ID и сертификата x509 на стороне клиента.
Динамический SAML
Конкретные инструкции для Okta, Auth0 и самостоятельного SAML приведены ниже.
Redash запрашивает три поля конфигурации:
- SAML Metadata URL - это URL-адрес XML-файла, содержащего метаданные, необходимые pysaml для согласования соединения.
- SAML Entity ID - URL-адрес вашего экземпляра Redash.
- SAML NameID Format - это формат NameID, предоставляемый вашим IDP. Обычно его можно найти в файле метаданных .xml.
Статический SAML
Для статической конфигурации требуются эти поля:
- SAML Single Sign-on URL - это URL-адрес вашей IDP, на который будут перенаправляться пользователи при нажатии кнопки SAML Login в Redash.
- SAML Entity ID должен быть URL-адресом вашего экземпляра Redash.
- Сертификат SAML x509 будет предоставлен вашей IDP.
Самостоятельный SAML
- URL-адрес метаданных SAML должен указывать на XML-файл на вашем сервере, например:
http://your-site.com/auth/realms/somerelm/protocol/saml/descriptor.
- Идентификатор сущности SAML должен быть: redash
- Формат идентификатора SAML NameID должен быть:
urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress
Okta
Настройка Redash с Okta по протоколу SAML 2.0 занимает всего пару минут. Начните с панели управления Okta, нажав кнопку добавления нового приложения. В качестве платформы выберите Web. В качестве метода входа в систему выбран SAML 2.0. На следующем экране Okta предлагает поля для нескольких URL-адресов:
- URL единого входа
- URL получателя
- URL назначения
- URI аудитории
Во всех этих полях вы будете использовать одно и то же значение. Для клиентов SaaS URL имеет следующий вид:
https://app.redash.io/org-slug/saml/callback.
Если вы используете самостоятельную версию Redash, то вам необходимо использовать URL:
https://<Ваш самостоятельный домен>/saml/callback?org_slug=default.
После заполнения этих URL установите формат Name Id в EmailAddress. В качестве имени пользователя Application используется Email. Также необходимо добавить два утверждения об атрибутах, а затем сохранить изменения:
|
Name |
Value |
|
FirstName |
user.firstName |
|
LastName |
user.lastName |
Далее необходимо предоставить информацию об Okta в Redash. Перейдите на вкладку Settings в меню настроек Redash. Переключите опцию SAML Enabled. Появятся три поля. Для SAML Metadata URL найдите на вкладке Sign On в настройках Okta ссылку под названием "Identity Provider Metadata" и вставьте ее в Redash. Эта ссылка будет указывать на XML-документ на сервере Okta.
Чтобы получить SAML Entity ID, нажмите кнопку "View Setup Instructions" на вкладке Sign On в Okta. Вставьте "Identity Provider Single Sign-On URL" в поле SAML Entity ID в Redash.
И наконец, найдите "метаданные IDP" на странице инструкций по настройке в Okta. Метаданные IDP" представляют собой фрагмент XML, содержащий ключ <md:NameIDFormat>. Вставьте его содержимое в поле SAML NameID Format в Redash. Пример:
urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress
Изменения на этом экране будут сохранены автоматически. Теперь вы можете войти в Redash, используя свои учетные данные Okta.
Теперь вы можете войти в Redash с помощью Okta SSO.
Управление группами Redash с помощью утверждений атрибутов Okta
Для настройки Okta таким образом, чтобы она передавала атрибут RedashGroups, выполните следующие действия:
- В панели управления Okta добавьте RedashGroups в настройках SAML там, где ранее были добавлены FirstName и LastName, а затем сохраните изменения:
|
Name |
Value |
|
FirstName |
user.firstName |
|
LastName |
user.lastName |
|
RedashGroups |
appuser.RedashGroups |
- В консоли администратора перейдите в раздел Directory > Profile Editor и найдите профиль пользователя для приложения redash.
- В открывшемся окне Attributes нажмите кнопку Add Attribute. Добавьте новый атрибут с приведенной ниже конфигурацией:
|
Name |
Value |
|
Data type |
string array |
|
Variable name |
RedashGroups |
|
Scope |
User personal |
- На странице Applications перейдите на вкладку Assigments. Теперь вы можете отредактировать назначения пользователя и добавить для него необходимые RedashGroups.
Auth0
- Создайте традиционный webapp
- В разделе дополнений включите SAML2
-
В конфигурации SAML2 настройте URL обратного вызова:
- Для клиентов SaaS URL:
https://app.redash.io/org-slug/saml/callback.
- Для пользователей Open Source URL:
https://[YOUR_REDASH_HOSTNAME]/saml/callback?org_slug=default
- В конфигурации SAML2 используйте следующий JSON настроек:
{
"mappings": {
"given_name": "first_name",
"family_name": "last_name"
},
"passthroughClaimsWithMapping": false,
"includeAttributeNameFormat": false
}
В Redash используйте следующую конфигурацию:
- URL метаданных SAML:
https://[YOUR_TENANT_HOSTNAME]/samlp/metadata/[CONNECTION_ID].
- SAML Entity ID:
urn:auth0:[YOUR_TENANT_NAME]:[CONNECTION_NAME]
- Формат SAML NameID: EmailAddress
Управление группой
Пользователи Redash могут быть членами одной или нескольких групп. Каждый новый пользователь автоматически добавляется в группу Default. Члены группы Admin могут создавать новые группы, добавлять и удалять участников из групп, а также полностью запрещать пользователям доступ к Redash. Каждая группа может быть подключена к определенным источникам данных.
Создание & Редактирование групп
Редактировать или создавать группы могут только члены Admin. Перейдите в меню Settings > Groups и нажмите кнопку New Group. Введите название новой группы и продолжите.
Добавьте пользователей в новую группу, введя их имена:
Для редактирования информации о группе щелкните на ее названии в списке групп на панели настроек. Там можно изменить ее название, добавить или удалить пользователей, а также связать ее с различными источниками данных.
Создание Администратора
Вы можете сделать любого пользователя администратором. Для этого достаточно добавить его в группу Admin. Администраторы могут модифицировать источники данных, изменять группы и права доступа, отключать пользователей и добавлять новых администраторов. Чтобы снять с пользователя права администратора, просто удалите его из группы Admin, следуя приведенным выше инструкциям.
Отключение пользователей
Администраторы могут добавить пользователя в группу Disabled из экрана Settings. Найдите пользователя на вкладке Пользователи и нажмите кнопку Disable справа.
Пользователи с ограниченными возможностями не могут войти в систему Redash. Вы можете повторно включить отключенного пользователя, найдя его на вкладке Disabled.
Привлечение пользователей к использованию Redash
Приглашать пользователей могут только администраторы - чтобы пригласить нового пользователя, перейдите в раздел Settings>Users и нажмите на кнопку New User.
Далее необходимо ввести их имя и электронную почту. Они получат приглашение по электронной почте и должны будут создать учетную запись Redash.
Чтобы добавить пользователя в существующую группу, перейдите в меню Setting>Groups, выберите группу и добавьте пользователей, введя их имена:









