13 SAML подешавање са OneLogin-ом

Преглед

Овај одељак пружа смернице за конфигурисање јединственог пријављивања и обезбеђивања корисника у Zabbix-у са OneLogin користећи SAML 2.0 аутентификацију.

OneLogin конфигурација

Креирање апликације

1. Пријавите се на свој налог на OneLogin-у. У сврху тестирања, можете креирати бесплатан налог програмера у OneLogin-у.

2. У веб интерфејсу OneLogin идите на Апликације → Апликације.

3. Кликните на "Додај апликацију" и потражите одговарајућу апликацију. Смернице на овој страници су засноване на примеру апликације * SCIM провизионисање са SAML-ом (SCIM v2 Enterprise, full SAML)*.

4. За почетак, можда ћете желети да прилагодите име за приказ ваше апликације. Можда ћете желети да додате иконе и детаље о апликацији. Након тога кликните на Сачувај.

Подешавање SSO/SCIM провиѕионисања

1. У Конфигурација -> Детаљи апликације, поставите Zabbix крајњу тачку за једнократну пријаву http://<zabbix-instance-url>/zabbix/index_sso.php?acs као вредност ових поља:

  • ACS (потрошачки) URL валидатор
  • ACS (потрошачка) URL адреса

Обратите пажњу на употребу "http", а не "https", тако да параметар acs не буде уклоњен из захтева.

Такође је могуће користити "https". Да би то функционисало са Zabbix-ом, потребно је у conf/zabbix.conf.php додати следећу линију:

$SSO['SETTINGS'] = ['use_proxy_headers' => true];

Остале опције оставите са њиховим подразумеваним вредностима.

2. У Конфигурација -> API веза поставите следеће вредности:

  • SCIM Base URL: https://<zabbix-instance-url>/zabbix/api_scim.php
  • SCIM JSON Template: треба да садржи све прилагођене атрибуте које желите да проследите Zabbix-у преко SCIM-а као што су user_lastname, user_email, and user_mobile:
{
         "schemas": [
           "urn:ietf:params:scim:schemas:core:2.0:User"
         ],
         "userName": "{$parameters.scimusername}",
         "name": {
           "familyName": "{$user.lastname}",
           "givenName": "{$user.firstname}"
         },
          "user_name": "{$user.firstname}",
          "user_lastname": "{$user.lastname}",
          "user_mobile": "{$user.phone}",
          "user_email": "{$user.email}"
       }

Имена атрибута су произвољна. Могу се користити различита имена атрибута, међутим, потребно је да одговарају одговарајућој вредности поља у Zabbix SAML подешавањима.

Имајте на уму да да би обезбеђивање корисника функционисало, OneLogin треба да добије као одговор атрибут 'name' са 'givenName' и 'familyName', чак и ако га није захтевао добављач услуге. Због тога је потребно ово навести у шеми у делу конфигурације апликације.

  • SCIM Bearer Token: унесите Zabbix API токен са суперадминистраторским дозволама.

Кликните на Омогући да бисте активирали везу.

3. На страници Провизионисање омогућите опцију Провизионисања:

4. Страница Параметри садржи листу подразумеваних параметара:

  • Уверите се да 'scimusername' одговара вредности за пријаву корисника у OneLogin-у (нпр. е-пошта);
  • Означите опцију Укључи провизионисање корисника за параметар 'Groups'; – Кликните на "+" да бисте креирали прилагођене параметре који су потребни за SAML тврдње и обезбеђивање корисника, као што су user_name, user_lastname, user_email, and user_mobile:

Када додајете параметар, обавезно означите и опције Укључи у SAML тврдњу и Укључи у провизионисању корисника.

– Додајте 'group' параметар који одговара улогама корисника у OneLogin-у. Улоге корисника ће бити прослеђене као стринг, одвојене тачком и зарезом ;. OneLogin корисничке улоге ће се користити за креирање корисничких група у Zabbix-у:

Проверите листу параметара:

5. На страници Правила креирајте мапирања улога корисника у подразумевани параметар Групе.

Можете да користите регуларни израз да пренесете одређене улоге као групе. Имена улога не би требало да садрже ; јер га OneLogin користи као сепаратор када шаље атрибут са неколико улога.

Zabbix конфигурација

1. У Zabbix-у идите на SAML подешавања
и попуните опције конфигурације на основу OneLogin конфигурације:

Zabbix field Setup field in OneLogin Sample value
* ID ентитета IdP* URL издаваоца
(погледајте картицу SSO ваше апликације у OneLogin-у)
* URL за SSO сервис* SAML 2.0 крајња тачка (HTTP)
(погледајте картицу SSO ваше апликације у OneLogin-у)
* URL за SLO сервис* SLO крајња тачка (HTTP)
(погледајте картицу SSO ваше апликације у OneLogin-у)
Атрибут корисничког имена Прилагођени параметар user_email
Атрибут имена групе Прилагођени параметар group
Атрибут корисничког имена Прилагођени параметар user_name
Атрибут презимена корисника Прилагођени параметар user_lastname

Такође је потребно конфигурисати мапирање корисничких група. Мапирање медија је опционо. Кликните на Ажурирај да бисте сачували ова подешавања.

2. Преузмите сертификат који обезбеђује OneLogin и сместите га у conf/certs Zabbix кориснички интерфејс инсталацију, као idp.crt.

Поставите дозволе на 644 покретањем команде:

chmod 644 idp.crt

Можете да приступите преузетом сертификату у OneLogin-у у Апликације -> SSO -> кликните на Прикажи детаље испод тренутног сертификата.

Могуће је користити другачије име сертификата и локацију. У том случају, обавезно додајте у conf/zabbix.conf.php следећу линију:

$SSO['IDP_CERT'] = 'path/to/certname.crt';

SCIM провизионисање корисника

Са омогућеним провизионисањем корисника, сада је могуће додати/ажурирати кориснике и њихове улоге у OneLogin-у и одмах их обезбедити за Zabbix.

На пример, можете креирати новог корисника:

Додајте га у корисничку улогу и апликацију која ће обезбедити корисника:

Када сачувате корисника, биће додељен Zabbix-у. У Апликација -> Корисници можете да проверите статус обезбеђивања тренутних корисника апликације:

Ако је успешно провизионисан, корисник се може видети на листи Zabbix корисника.