OpenID Connect (OIDC) е протокол за автентикация, базиран на OAuth 2.0, който позволява на Zyxel защитната стена да удостоверява потребителите чрез външен доставчик на идентичност (IdP).
Zyxel USG FLEX H серията поддържа OIDC автентикация с Microsoft Entra ID за Captive Portal и SSL VPN с OpenVPN Connect.
Вместо да се поддържат отделни потребителски данни на защитната стена, потребителите се пренасочват към Microsoft Entra ID и се удостоверяват с техния съществуващ организационен акаунт. След това Zyxel защитната стена валидира OIDC автентикационния отговор и използва върнатата потребителска информация за разрешаване на достъпа.
Тази статия описва как да конфигурирате Microsoft Entra ID като OIDC сървър на Zyxel USG FLEX H серия, включително автентикация, базирана на потребители и групи.
Забележка: OIDC автентикацията не се поддържа за Remote Access VPN/IKEv2 или SSL VPN с SecuExtender.
Ако искате да конфигурирате Google като OIDC доставчик, вижте Как да конфигурирате Google като OIDC доставчик на идентичност на Zyxel USG FLEX H серия.
Предварителни изисквания
Преди да конфигурирате Microsoft Entra ID OIDC автентикация на Zyxel защитната стена, уверете се, че са изпълнени следните изисквания:
- Zyxel защитна стена с uOS 1.39 или по-нова версия.
- Достъп до Microsoft Entra ID tenant с разрешение за регистриране на приложения.
- Потребителски акаунт в Microsoft Entra ID, който ще се използва за тест.
- Сигурностна група в Microsoft Entra ID, ако е необходима автентикация на база група.
- Публично достъпен FQDN за Zyxel защитната стена.
- Валиден HTTPS сертификат, конфигуриран за FQDN на защитната стена.
- Интернет връзка от Zyxel защитната стена до Microsoft Entra ID автентикационните крайни точки.
- Captive Portal активиран на Zyxel защитната стена, ако OIDC автентикацията се използва за вход в Captive Portal.
Примерна среда
За тази статия е използвана следната тестова среда:
| Компонент | Пример |
|---|---|
| Zyxel защитна стена | USG FLEX 200H |
| Доставчик на автентикация | Microsoft Entra ID |
| Автентикационен протокол | OpenID Connect (OIDC) |
| Entra ID Tenant | zyxel.onmicrosoft.com |
| Тестово приложение | Zyxel OIDC Test |
| Тестова група | Zyxel-OIDC-Test |
| FQDN на защитната стена | h200.zylab.uk |
1. Конфигуриране на Microsoft Entra ID
1.1 Регистриране на приложение
- Влезте в Microsoft Entra администраторския център.
- Отидете на Identity → Applications → App registrations.
- Кликнете на New registration.
- Конфигурирайте приложението по следния начин:
| Настройка | Стойност |
|---|---|
| Име | Zyxel OIDC Test |
| Поддържани типове акаунти | Single tenant |
| Redirect URI | Конфигурира се по-късно |
За Поддържани типове акаунти изберете Accounts in this organizational directory only (Single tenant).
Кликнете на Register.
Забележка: Redirect URI ще се конфигурира на по-късен етап след получаване на OIDC callback URL от Zyxel защитната стена.
1.2 Записване на идентификаторите на приложението
След като приложението е регистрирано, отворете страницата Overview на приложението.
Разделът Essentials съдържа идентификаторите, необходими за OIDC конфигурацията на Zyxel защитната стена:
- Application (client) ID — идентифицира регистрираното приложение.
- Directory (tenant) ID — идентифицира Microsoft Entra tenant.
- Supported account types — потвърждава, че приложението е конфигурирано като single-tenant приложение.
Application (client) ID ще бъде въведен по-късно в Zyxel OIDC конфигурацията като Client ID.
Directory (tenant) ID се използва за изграждане на Microsoft Entra OIDC Issuer URL.
За single-tenant приложение, issuer URL има следния формат:
https://login.microsoftonline.com/<TENANT_ID>/v2.01.3 Създаване на клиентска тайна
Zyxel защитната стена се нуждае от клиентска идентификация, за да удостоверява OIDC приложението при комуникация с Microsoft Entra ID.
- В регистрацията на приложението отидете на Manage → Certificates & secrets.
- Изберете таба Client secrets.
- Кликнете на New client secret.
Конфигурирайте тайната според изискванията за сигурност и ротация на вашата организация.
След създаване на тайната, Microsoft Entra ID показва тайната в раздел Client secrets.
1.4 Копиране на стойността на клиентската тайна
След създаване на клиентската тайна, копирайте веднага Стойността и я съхранете сигурно.
Важно: Стойността на клиентската тайна се показва само веднъж при създаването ѝ. Ако стойността бъде изгубена, създайте нова клиентска тайна.
Стойността, показана под Value, трябва да бъде въведена в Zyxel конфигурацията като Client Secret.
Не използвайте Secret ID като клиентска тайна.
1.5 Създаване на Сигурностна група в Microsoft Entra ID
Създайте сигурностна група, която ще се използва за идентифициране на потребителите за OIDC автентикация.
- Отворете Microsoft Entra ID → Groups → All groups.
- Кликнете на New group.
- Задайте Group type на Security.
- Въведете име на групата.
В този пример използвайтеZyxel-OIDC-Test. - Задайте Membership type на Assigned.
- Добавете тестовия потребител в групата.
- Създайте групата.
След създаване на групата, отворете я и отбележете нейния Object ID. Този идентификатор ще се използва по-късно при създаване на Външен групов потребител на Zyxel защитната стена.
Забележка: Името на групата се използва за администриране и идентификация в Microsoft Entra ID. Защитната стена използва Object ID на групата за нейното идентифициране.
1.6 Конфигуриране на Groups Claim
OIDC токенът трябва да съдържа информация за членството на потребителя в групи. Конфигурирайте groups claim в Microsoft Entra ID приложението.
- Отворете регистрираното приложение Zyxel OIDC Test.
- Отидете на Manage → Token configuration.
- Кликнете на Add groups claim.
- Под Select group types to include in Access, ID, and SAML tokens изберете Security groups.
- Под Customize token properties by type изберете Group ID.
- Кликнете на Add.
Microsoft Entra ID сега ще включва идентификатора на сигурностната група на потребителя в OIDC токена.
В този пример информацията за групата се връща в groups claim.
Zyxel защитната стена ще използва този claim по-късно с:
Group Attribute: groups
Забележка: groups claim не създава група. Групата се създава на предишната стъпка. Groups claim казва на Microsoft Entra ID да включи информацията за групата на потребителя в OIDC токена.
Това позволява на защитната стена да идентифицира членството на потребителя в група и да го свърже с отговарящия Външен групов потребител.
2. Конфигуриране на OIDC автентикация на Zyxel защитната стена
След конфигуриране на приложението в Microsoft Entra ID, конфигурирайте OIDC автентикационния сървър на Zyxel защитната стена.
Отидете на:
User & Authentication → User Authentication → AAA Server
Създайте нов автентикационен сървър и въведете следните настройки:
| Настройка | Примерна стойност |
|---|---|
| Име | Entra_ID_Test |
| Описание | Microsoft Entra ID OIDC test |
| Issuer URL | Microsoft Entra ID issuer URL |
| Client ID | Application (client) ID от Microsoft Entra ID |
| Client Secret | Стойност на клиентската тайна от Microsoft Entra ID |
| Redirect Address | h200.zylab.uk |
Redirect URI се генерира автоматично от Zyxel защитната стена на базата на Redirect Address и HTTPS порта.
В този пример генерираният Redirect URI е:
https://h200.zylab.uk:1003/oauth2/callback
Този URI трябва да бъде добавен и в Redirect URI конфигурацията на Microsoft Entra приложението.
Важно: Използвайте Стойността на клиентската тайна от Microsoft Entra за полето Client Secret. Не използвайте Secret ID.
Разширени настройки
Конфигурирайте следните разширени настройки:
| Настройка | Стойност | Описание |
|---|---|---|
| Допълнителен обхват | email |
Заявява имейл адреса на потребителя от Microsoft Entra ID. |
| Атрибут за вход | email |
Използва имейл адреса на потребителя като име за вход. |
| Атрибут за група | groups |
Получава информацията за групите на потребителя от OIDC токена. |
3. Конфигуриране на Redirect URI в Microsoft Entra ID
Използвайте Redirect URI, генериран от Zyxel OIDC конфигурацията.
- В Microsoft Entra приложението отворете Manage → Authentication.
- Кликнете на Add Redirect URI.
Въведете Redirect URI, показан в Zyxel OIDC конфигурацията:
https://<firewall-FQDN>:1003/oauth2/callbackКликнете на Configure.
Важно: Redirect URI трябва да съвпада точно с URI, конфигуриран на Zyxel защитната стена.
4. Валидиране на OIDC конфигурацията
- В Zyxel защитната стена кликнете на Test, за да валидирате OIDC конфигурацията.
Защитната стена отваря нов таб в браузъра и пренасочва потребителя към страницата за вход на Microsoft Entra ID.
По време на първото влизане Microsoft Entra ID може да покаже страница Permissions requested.
Прегледайте заявените разрешения и кликнете на Accept.
Ако сте администратор и искате да дадете съгласие от името на всички потребители в tenant-а, изберете Consent on behalf of your organization преди да кликнете на Accept. Давате организация-широко съгласие само след като потвърдите, че заявените разрешения са необходими за приложението.
Забележка: Страницата за съгласие обикновено се показва само когато се изисква съгласие. След като необходимото съгласие е дадено, тя не трябва да се показва отново при всяко следващо влизане, освен ако не се изискват допълнителни разрешения или съществуващото съгласие не бъде премахнато.
5. Проверка на теста за автентикация
След успешен вход, защитната стена показва резултата от OIDC Authentication Test.
Съобщението OIDC Authentication Successful (Verified) потвърждава, че защитната стена е удостоверила успешно потребителя с Microsoft Entra ID и е получила очакваната потребителска информация.
Резултатът също показва атрибутите, получени от доставчика на идентичност:
- Потребителско име – акаунтът на удостоверения потребител.
- Потребителски атрибут – атрибутът, използван като име за вход.
- Атрибут за група – атрибутът, използван за получаване на информацията за групата на потребителя.
- Списък с групи – групите, върнати от Microsoft Entra ID за удостоверения потребител.
В този пример Group Attribute е конфигуриран като groups, така че защитната стена получава информацията за групите на потребителя от groups claim.
Забележка: Точните стойности, показани в тестовия резултат, зависят от влезлия потребител и конфигурацията на Microsoft Entra ID.
6. Създаване на Външен групов потребител
След успешен тест на OIDC автентикацията, създайте Външен групов потребител на Zyxel защитната стена.
Отидете на:
User & Authentication → User/Group → User
Създайте нов потребител със следните настройки:
- Потребителско име: Въведете име за външната група.
-
Тип потребител:
External Group User - Автентикационен сървър: Изберете конфигурирания Microsoft Entra ID OIDC сървър.
- Идентификатор на група: Въведете идентификатора на Microsoft Entra ID групата.
- Описание: Въведете по избор описание.
Идентификаторът на групата трябва да съвпада с ID на групата, върнат от Microsoft Entra ID в groups claim по време на теста за OIDC автентикация.
Например, в нашата тестова среда, резултатът от OIDC теста показа групата в атрибута group_list. Тази стойност след това се използва като Идентификатор на група за Външния групов потребител.
Забележка: Идентификаторът на групата обикновено е Microsoft Entra ID group object ID (GUID). Използвайте груповия ID, върнат от OIDC токена, а не името на групата.
7. Конфигуриране на политика за автентикация на Captive Portal
След създаването на Външния групов потребител, конфигурирайте политиката за автентикация на Captive Portal.
Отидете на:
Captive Portal → Authentication Policy
Създайте или редактирайте политиката за автентикация и конфигурирайте следните настройки:
- Активиране: Активирайте политиката.
- Входящ интерфейс: Изберете интерфейса, към който се свързват потребителите на Captive Portal.
-
Изходен адрес: Изберете необходимия изходен адрес или
any. -
Адрес на дестинация: Изберете необходимия адрес на дестинация или
any. - Активиране на Walled Garden: Активирайте тази опция.
- Доверен доставчик на идентичност: Изберете Microsoft Entra ID OIDC доставчика на идентичност.
- Метод на вход: Изберете Sign-on With.
- Изберете конфигурирания OIDC автентикационен сървър.
Walled Garden позволява на неавтентикирани потребители да достигнат необходимия доставчик на идентичност преди завършване на автентикацията. Това е необходимо за OIDC Sign-On.
Забележка: Довереният доставчик на идентичност, избран тук, трябва да съвпада с OIDC автентикационния сървър, конфигуриран под User & Authentication → User Authentication.
8. Запазване и проверка на политиката за автентикация
Кликнете на Apply, за да запазите конфигурацията.
Политиката трябва да се появи в списъка Captive Portal → Authentication Policy.
В нашия пример политиката използва:
-
Метод на вход:
sign-on -
Sign-on With:
Entra_ID_Test -
Тип портал:
internal
Това потвърждава, че политиката на Captive Portal е конфигурирана да използва Microsoft Entra ID OIDC автентикационния сървър.
9. Проверка на OIDC автентикацията
След завършване на OIDC конфигурацията проверете автентикацията от клиентско устройство.
- Свържете клиентско устройство към мрежата, защитена с Captive Portal.
- Отворете уеб браузър и достъпете външен уебсайт.
- Ще се покаже страницата за вход на Captive Portal.
- Кликнете на Sign in, за да започнете OIDC автентикацията.
Влезте с акаунт в Microsoft Entra ID.
След успешна автентикация потребителят се пренасочва обратно към мрежата.
Защитната стена вече трябва да разпознае потребителя като Външен групов потребител.
Log & Report → Log / Events → System
Проверете логовете на защитната стена в:
Отстраняване на проблеми: Не са намерени групи
Ако OIDC автентикацията е успешна, но резултатът от автентикацията показва No groups found, проверете конфигурацията на групите както на защитната стена, така и в Microsoft Entra ID.
Проверете следното:
- На защитната стена се уверете, че Group Attribute е конфигуриран.
- Уверете се, че стойността съвпада с груповия claim, изпратен от Microsoft Entra ID.
В този пример стойността еgroups. - Уверете се, че удостовереният потребител е член на очакваната група.
- Проверете, че Microsoft Entra ID изпраща информацията за групата в ID токена.
Например, ако защитната стена е конфигурирана с Group Attribute = groups, резултатът от автентикацията трябва да съдържа атрибута groups и съответния групов ID.
Ако се показва No groups found, самият OIDC вход все още може да е успешен. Проблемът е конкретно свързан с получаването или картографирането на информацията за групата на потребителя.

Коментари
0 коментараВлезте в услугата, за да оставите коментар.