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