В рабочей области «Проверка подлинности» можно настроить единый вход в SaltStack Config для использования системы проверки подлинности, совместимой с протоколами OAuth и OIDC.
О едином входе OAuth и OIDC
Единый вход OAuth — это функция, которую многие организации настраивают при внедрении SaltStack Config. Помимо прочего, единый вход предоставляет следующие преимущества.
- Сокращение времени, которые тратят пользователи при входе в службы с одним и тем же удостоверением. После того как пользователь входит в одну из служб, использующих единый вход, его подлинность автоматически подтверждается во всех службах организации.
- Уменьшение объема учетных данных. Пользователь должен запомнить только один набор учетных данных.
Реализацию протокола OAuth с поддержкой OIDC обеспечивают многие службы, в том числе OKTA, Google, Microsoft, GitLab, Zendesk, Apple, Keycloak, Salesforce и др.
Работа OAuth и OIDC с SaltStack Config
Когда пользователь пытается войти в SaltStack Config с помощью удостоверения OAuth:
- SaltStack Config запрашивает у пользователя авторизацию на доступ к ресурсам служб.
- Если пользователь согласен, SaltStack Config получает разрешение на авторизацию;
- SaltStack Config запрашивает у сервера авторизации (API) маркер доступа, подтверждая подлинность собственного удостоверения.
- Если удостоверение приложения прошло проверку подлинности и предоставлено действительное разрешение на авторизацию, сервер авторизации (API) выдает SaltStack Config маркер доступа;
- SaltStack Config запрашивает ресурс на сервере ресурсов (API) и представляет маркер доступа для проверки подлинности.
- Если маркер доступа действителен, сервер ресурсов (API) выделяет ресурс приложению и пользователь может войти в SaltStack Config.
Терминология проверки подлинности OAuth и OIDC
Термин | Определение |
---|---|
OAuth | OAuth 2.0 — это открытый протокол делегирования доступа (его также иногда называют стандартом), с помощью которого пользователь может выполнять действия на веб-сайте, после того как его подлинность была удостоверена с помощью маркера безопасности. Этот способ обычно используется для того, чтобы пользователи могли предоставить доступ к своей информации другим сторонним приложениям, не предоставляя им учетных данных доступа (паролей). OAuth — это единый вход для браузера. OAuth разрешает серверу авторизации выдавать маркеры доступа сторонним клиентам с согласия владельца ресурса. Затем сторонний клиент использует маркер доступа для доступа к защищенным ресурсам, которые размещаются на сервере ресурсов. |
OIDC | Open ID Connect Open ID Connect (OIDC) — это обычный уровень удостоверений поверх протокола OAuth 2.0. OIDC позволяет клиентам проверять учетные данные пользователя с помощью процедуры проверки подлинности, выполняемой сервером авторизации. Этот уровень также позволяет получать основные сведения о профиле пользователя во всех приложениях. |
Владелец ресурса | Владелец ресурса — это пользователь, который разрешает приложению доступ к своей учетной записи. Доступ приложения к учетной записи пользователя ограничивается рамками предоставленных разрешений, например правами на чтение или запись. |
Клиент | Клиент — это стороннее приложение, которому требуется доступ к учетной записи пользователя (в данном случае — SaltStack Config). |
Сервер авторизации | На сервере авторизации размещаются защищенные учетные записи и учетные данные пользователя. Он проверяет удостоверение пользователя, а затем передает клиенту маркеры доступа. Доступ к этому серверу часто можно получить через API-интерфейс службы. |
Сервер ресурсов | Сервер ресурсов — это API-сервер, который используется для доступа к информации пользователя. Он обрабатывает запросы, прошедшие проверку подлинности, после того, как клиент получит маркер доступа. В небольших развертываниях, как правило, имеется только один сервер ресурсов, который зачастую относится к той же программной базе или тому же развертыванию, что и сервер авторизации. В крупных развертываниях может присутствовать несколько серверов ресурсов. Все серверы ресурсов работают самостоятельно, но при этом все пользуются общим сервером авторизации. |
Действия перед настройкой
Перед настройкой OAuth и OIDC в SaltStack Config обеспечьте своей организации доступ к службе OAuth 2.0 (OKTA или Google) и ознакомьтесь с их процедурами регистрации приложений.
Регистрация SaltStack Config в качестве приложения в OKTA или Google
На веб-сайте службы OAuth введите основную информацию о SaltStack Config, включая имя, веб-сайт и т. д. После регистрации приложения вам выделяется секретный ключ клиента, который надо будет предоставить в SaltStack Config.
При создании приложения один из самых важных моментов — регистрация одного URL-адреса перенаправления или нескольких, которые будут использоваться приложением. По этим URL-адресам служба OAuth 2.0 будет перенаправлять пользователя после авторизации приложения.
Настройка поставщика удостоверений
Чтобы настроить единый вход с использованием службы OAuth и OIDC, применяемой в организации, сделайте следующее.
- В боковом меню выберите Администрирование > Проверка подлинности.
- Щелкните Создать.
- В меню Тип конфигурации выберите OIDC.
- В поле Имя задайте для этой конфигурации описательное имя.
- В меню Поставщик OIDC выберите OKTA или Google.
- Заполните указанные ниже поля сведениями о среде SaltStack Config.
- Базовый URI
- URL-адрес API-интерфейса (только для конфигураций OKTA)
- Key
- Секретный ключ
Примечание: Описание этих полей см. в разделе Поля информации OIDC. - Нажмите Сохранить.
На этом настройка OIDC для SaltStack Config завершена.
Настройка RBAC для OIDC
Для того чтобы пользователь был добавлен в базу данных локальных пользователей, ему сначала необходимо войти в SaltStack Config. После первоначального входа таким пользователям будут назначаться роли и разрешения точно так же, как и тем пользователям, чьи учетные данные хранятся локально в SaltStack Config на сервере RaaS.
После первоначального входа пользователя ему можно назначить соответствующие роли и разрешения в рабочей области «Роли». Подробности о рабочей области «Роли» см. в разделе Роли и разрешения.
Поля информации OIDC
Все поля с информацией для проверки подлинности OIDC обязательны. Введите сведения о конфигурации проверки подлинности OIDC следующим образом.
Поле | Описание |
---|---|
Имя | Имя подключения для проверки подлинности, используемое сервером SSE. Это имя будет отображаться на боковой панели при входе в рабочую область «Проверка подлинности» и должно быть уникальным, если настраивается несколько конфигураций. |
Поставщик OIDC | Выберите в этом меню поставщик удостоверений OIDC, чтобы отобразить его параметры. |
Базовый URI | Базовый URL-адрес, который ваша организация использует в SaltStack Config. Он также называется адресом сервера узла. Этот URL-адрес может быть записан в формате полного доменного имени (FQDN) или IP-адреса, например https://example.com . |
URL-адрес API-интерфейса | URL-адрес API-интерфейса, предоставленный поставщиком удостоверений. Это поле отображается только в том случае, если поставщик удостоверений — OKTA. |
Key | Ключ, предоставленный поставщиком удостоверений. В OKTA ключ называется «идентификатор клиента». |
Секретный ключ | Секретный ключ, предоставленный поставщиком удостоверений. В OKTA этот ключ называется «секретный ключ клиента». |