ADSCIM utilita yordamida foydalanuvchilar va guruhlarni LDAP katalogi bilan sinxronlash

Agar kompaniyangizda Active Directory federatsiya xizmati ishga tushirilgan bo‘lsa, xodimlar va guruhlarni Biznes uchun Yandex 360 bilan avtomatik sinxronlashni sozlashingiz mumkin — buning uchun maxsus Windows xizmati ni o‘rnatish va sozlash kerak.

Agar Active Directory’dan foydalanuvchilarni sinxronlashni yoqishni xohlasangiz, quyidagi ko‘rsatma bo‘yicha YandexADSCIM (kompyuterda Windows xizmati ko‘rinishidagi utilita) ni o‘rnating va foydalanuvchi nomidan LDAP katalogidan o‘qish huquqlari bilan dasturni ishga tushiring. YandexADSCIM Xizmatlar moslamasi orqali boshqariladi. Konfiguratsiya faylida sozlamalar o‘zgaradi.

Hozir Active Directory, Samba DC va Red ADM kataloglari to‘liq qo‘llab-quvvatlanadi. Boshqa LDAP kataloglari kelajakda YandexADSCIM utilita *nix-platformalariga ko‘chirilganda to‘liq qo‘llab-quvvatlanadi. Hozir uni boshqa LDAP kataloglari bilan ishlashni sozlash uchun foydalanish mumkin, lekin OS Windows mavjud qurilmada ishga tushirish kerak.

Ulanish va ADSCIMni dastlabku sozlash

1-qadam. Sozlashni boshlang

  1. Yagona kirish (SSO) yoqilgan va to‘g‘ri ishlayotganini tekshiring. Yagona kirish qanday ulanadi

  2. Foydalanuvchining unikal identifikatorini bering:

    • Uni Yandex katalogiga kiritish uchun ADSCIM utilita PropertyLoginName parametriga o‘tkazishda Active Directory atributini tanlang:

      • UPN (ADSCIMda userPrincipalName) — agar foydalanuvchilar kirishi uchun ismlar o‘zgarmaydigan bo‘lsa;

      • objectSID, objectGUID yoki boshqa — agar domen yoki biznes jarayonlarida foydalanuvchilarning UPN manzilini o‘zgartirishga olib kelishi mumkin bo‘lgan o‘zgarishlar rejalashtirilgan bo‘lsa.

    Diqqat

    Asosiy identifikator sifatida beradigan atributingiz o‘zgarmasligi kerak. Kirishda boshqa atributi mavjud foydalanuvchi yangi foydalanuvchi hisoblanadi.

    • Agar foydalanuvchilaringiz Yandex 360 xizmatlaridan foydalanayotgan va SAML 2.0 protokol yordamida autentifikatsiyadan o‘tayotgan bo‘lsa, atributlar mosligini tekshiring: Active Directoryda ko‘rsatilgan atribut NameID qiymati ADSCIM utilitaning PropertyLoginName asosiy identifikatoriga mos kelishi kerak.

    PropertyLoginName haqida ko‘proq ma’lumot uchun 4-qadam 2.5 bandga qarang.

  3. Foydalanuvchida Active Directoryda atributlar to‘ldirilganini tekshiring:

    • asosiy sifatida tanlangan identifikator;

    • User SamAccountName;

    • E-mail.

2-qadam. Client ID va OAuth-token oling

  1. Ilova yaratish sahifasiga o‘ting. O‘tish

  2. Xizmat nomini kiriting va uning belgisini biriktiring.

  3. Ilova platformalari blokida Veb-xizmatlar bandini tanlang. Redirect URI maydonida Debug URL qo‘yish havolasini bosing.

  4. Qatorning boshidagi Ma’lumotlarga ruxsat blokida Federatsiyalarni boshqarish ruxsat nomini kiriting.

  5. Aloqa uchun pochtani kiriting. Sahifaning pastki qismida Ilova yaratish tugmasini bosing.

  6. POST-so‘rov yuboring, bunda OAuth-token olasiz. Masalan, buni cURL orqali quyidagi buyruq yordamida qilish mumkin:

    curl -X POST https://oauth.yandex.ru/token -d "grant_type=client_credentials&client_id=qiymat1&client_secret=qiymat2"
    

    bunda parametr qiymaticlient_id — bu yaratilgan ilovaning IDclient_secret — uning maxfiy kaliti.

  7. Olingan ID va OAuth-tokenni saqlang. Ular keyingi qadamlarda kerak bo‘ladi.

3-qadam. Yandex 360 platformasida Client IDni ko‘rsating va Domain ID oling

  1. Biznes uchun Yandex 360 tarifida tashkilot kabinetini oching. O‘tish

  2. Umumiy sozlamalarYagona kirish (SSO) rukniga kiring.

  3. Sozlashni bosing.

  4. SCIM sinxronlash blokida 2-qadamda olingan ilovangiz IDsini qo‘ying.

  5. Domain ID ingizni nusxalang, u keyingi qadamda kerak bo‘ladi.

  6. O‘zgarishlarni saqlang.

4-qadam. Sinxronlash uchun Windows xizmatini o‘rnating va sozlang

  1. YandexADSCIM xizmatini yuklab oling va o‘rnating. O‘rnatish faylini yuklab olish

  2. Konfiguratsiya faylini toping %ProgramData%\Yandex\YandexADSCIM\AD_Users.config va uni istalgan matn muharririda oching.

    Maslahat

    Agar %ProgramData% jildi topilmasa, berkitilgan fayllarni ko‘rsatishni yoqing. Buni qanday bajarish mumkin

    Konfiguratsiya faylidagi har bir sozlama alohida qatorda kalit=qiymat formatida yoziladi. # belgisi bilan boshlanadigan qatorlarni xizmat e’tiborsiz qoldiradi.

    Konfiguratsiya faylini sozlang:

    1. LDAP parametri qiymatida Active Directoryga ulanish uchun to‘g‘ri yo‘l ko‘rsatilganini tekshiring. Yo‘q bo‘lsa, uni tuzating. Qidiruv parametrlariga xususiy qiymatlarni qo‘ying.

      Qidiruv so‘rovi uchun DIT = Directory Information Tree (o‘ngdan chapga qarab o‘qiladi) tizimidan to‘g‘ri yo‘ldan foydalaning:

      LDAP = LDAP://CN=Users,OU=DomainGroup,DC=YourCompanyName,DC=com
      

      qayerda

      • DC — domainComponent, xususiy domen va domen zonasi;

      • OU — OrganizationUnit, siz foydalanuvchilarni olishni xohlaydigan kompaniya, departament yoki bo‘lim;

      • CN — commonName, siz katalogdan olishni xohlaydigan obyekt nomi.

    2. BearerToken parametr qiymatida 2-qadamda olingan OAuth-tokenni ko‘rsating.

    3. DomainID parametr qiymatida 3-qadamda olingan ID domenni ko‘rsating.

    4. DryRun parametr qiymati boshidan true qiymatida o‘rnatilgan. Agar bu qiymatni qoldirilsa, bu bosqichda xizmat test rejimida ishlaydi. So‘rovlar loglarda qayd qilinadi, lekin sinxronlash amalga oshirilmaydi. SCIM sinxronlashni hozir yoqish uchun parametr qiymatini false ga almashtiring.

    5. Active Directorydan foydalanuvchilar ma’lumotlarini sinxronlang. Property bilan boshlanadigan parametrlar Yandex 360 platformasida foydalanuvchilarni yaratish yoki sinxronlashda atributlarni qayta tayinlash imkonini beradi.

      Foydalanuvchi identifikatoriga mos keladigan parametr PropertyLoginName uchta qiymatdan birini qabul qilishi mumkin:

      • userPrincipalName — UPN birlamchi qiymat;

      • objectSID;

      • objectGUID.

      Parametr qiymati atribut NameID qiymatiga mos kelishi kerak.

      Agar username atribut turidan foydalansangiz, username@domain.com dan foydalanmasangiz, unda qo‘shimcha tarzda IgnoreUsernameDomain parametrini true qiymati bilan ko‘rsating.

      Qolgan foydalanuvchi atributlari uchun:

      YandexADSCIM utilita parametri nomi

      Atribut nomi (rus.)

      Active Directorydan birlamchi qiymat

      Namuna

      PropertyFirstName

      Ism

      givenName

      Ivan

      PropertyMiddleName

      Otasining ismi

      middleName

      Ivanovich

      PropertyLastName

      Familiya

      sn (SurName)

      Ivanov

      PropertyDisplayName

      Chiqarilayotgan ism

      displayName

      Ivanov I. I.

      PropertyWorkMail

      Asosiy pochta

      mail

      I_ivanov@domain.ru

      PropertyTitle

      Lavozim

      title

      Ishlab chiquvchi

      PropertyMobilePhoneNumber

      Mobil telefon

      mobile

      +7 012 345-67-89

      PropertyWorkPhoneNumber

      Ish telefoni

      telephoneNumber

      +7 495 123-45-67

      PropertyIpPhoneNumber

      IP-telefon

      ipPhone

      7495 012-34-56

      Property bilan boshlanadigan parametrlarni bir necha marta ko‘rsatish mumkin — bunday holda parametrning qiymati ro‘yxat bo‘ladi. Bunda atributlar tartibi muhim. Masalan, foydalanuvchi familiyasini olish uchun atributlarni berish mumkin: PropertyLastName = surName, PropertyLastName = sn, PropertyLastName = lastName. Agar surName atribut mavjud bo‘lsa, uning qiymati foydalaniladi. Agar bu atribut yo‘q bo‘lsa, sn atributi qiymati foydalaniladi. Agar u ham yo‘q bo‘lsa — atribut qiymati lastName.

    6. Foydalanuvchilarni yuklab olishni cheklash uchun filtrdan UsersFilter foydalanish va LDAP so‘rovlarining standart sintaksisini qo‘llash mumkin.

      • Foydalanuvchilarni muayyan guruhga a’zoligiga qarab tanlash uchun filtrdan foydalaning:

        UsersFilter =(memberOf=CN=groupname,CN=Users,DC=domainname,DC=com)
        
      • Agar Active Directory’da bloklangan foydalanuvchilarni tanlanmadan qo‘shimcha chiqarib tashlash kerak bo‘lsa, filtrdan foydalaning:

        UsersFilter =(&(memberOf=CN=groupname,CN=Users,DC=domainname,DC=com) (!(userAccountControl:1.2.840.113556.1.4.803:=2)))
        

        Sinxronlash natijasida tashkilotingiz pochta domenida ro‘yxatdan o‘tgan, lekin filtrdan o‘tmagan foydalanuvchilar bloklanadi.

    7. Kerak bo‘lsa, Active Directory’dan pochta qutilari aliaslari Biznes uchun Yandex 360 sinxronlanishi uchun EnableAliases parametrini true qiymati bilan kiriting. Active Directory’da SMTP turi bilan proxyAdresses foydalanuvchi atributida ko‘rsatilgan domen pochta aliaslari Biznes uchun Yandex 360 platformasidagi xodim hisobi ga avtomatik kiritiladi.

      Bu muhim

      Aliaslarning to‘g‘ri sinxronlanishi uchun YandexADSCIM utilita versiyasi 1.1.0.144 yoki yuqori bo‘lishi kerak. O‘rnatish faylini yuklab olish

    8. Active Directorydan guruhlarni sinxronlang — EnableGroups parametrini true qiymati bilan kiriting.

      Guruhlar ro‘yxatini cheklash uchun filtrdan GroupsFilter foydalanish va LDAP so‘rovlarining standart sintaksisini qo‘llash mumkin. Masalan, barcha tarqatma xabarlar ro‘yxatini yuklab olish uchun filtrdan foydalaning:

      GroupsFilter =(&(objectClass=group)(!(groupType:1.2.840.113556.1.4.803:=2147483648)))
      
    9. Active Directorydan guruhlar atributlarini sinxronlang. PropertyGroup bilan boshlanadigan parametrlar Yandex 360 platformasida guruhlarni yaratish yoki sinxronlashda atributlarni qayta tayinlash imkonini beradi.

      YandexADSCIM utilita parametri nomi

      Atribut nomi (rus.)

      Active Directorydan birlamchi qiymat

      Namuna

      PropertyGroupDisplayName

      Nom

      name

      Integratsiya loyihasi

      PropertyGroupDescription

      Tavsif

      description

      Integratsiya loyihasida qatnashadigan xodimlar

      PropertyGroupEmail

      Tarqatma

      mail

      int@domain.ru

      PropertyGroup bilan boshlanadigan parametrlarni bir necha marta ko‘rsatish mumkin — bunday holda parametrning qiymati ro‘yxat bo‘ladi. Bunda atributlar tartibi muhim. Masalan, guruh nomini olish uchun quyidagi atributlarni berish mumkin: PropertyGroupDisplayName = name, PropertyGroupDisplayName = cn. Agar name atribut mavjud bo‘lsa, uning qiymati foydalaniladi. Agar bu atribut yo‘q bo‘lsa, cn atributi qiymati foydalaniladi.

    10. Tashqi kontaktlardan Yandex 360 platformasida foydalansangiz, ularni sinxronlang. Buning uchun EnableContacts parametrini true qiymati bilan kiriting.

      Bu muhim

      Kontaktlarning to‘g‘ri sinxronlanishi uchun YandexADSCIM utilita versiyasi 1.1.0.156 yoki yuqori bo‘lishi kerak. O‘rnatish faylini yuklab olish

      Birlamchi holatda LDAP-so‘rovi (&(objectClass=contact)) ni qanoatlantiruvchi barcha obyektlar Active Directory kontaktlari sifatida sinxronlanadi. Kontaktlar ro‘yxatini cheklash uchun filtrdan ContactsFilter foydalanish va LDAP so‘rovlarining standart sintaksisini qo‘llash mumkin. Masalan, faqat groupname guruhidagi kontaktlarni yuklab olish uchun filtrdan foydalaning:

      ContactsFilter = (&(objectClass=contact)(memberOf=CN=groupname,CN=Users,DC=domainname,DC=com))
      
    11. Active Directory’dan kontaktlar atributlarini sinxronlang. PropertyContact bilan boshlanadigan parametrlar Yandex 360 platformasida kontaktlarni yaratish yoki sinxronlashda atributlarni qayta tayinlash imkonini beradi.

      YandexADSCIM utilita parametri nomi

      Atribut nomi (rus.)

      Active Directorydan birlamchi qiymat

      Namuna

      PropertyContactFirstName

      Ism

      givenName

      Ivan

      PropertyContactMiddleName

      Otasining ismi

      middleName

      Ivanovich

      PropertyContactLastName

      Familiya

      sn (SurName)

      Ivanov

      PropertyContactTitle

      Lavozim

      title

      Ishlab chiquvchi

      PropertyContactDepartment

      Bo‘lim

      department

      Ishlab chiqish bo‘limi

      PropertyContactCompany

      Kompaniya

      company

      “Strana chudes” MCHJ

      PropertyContactMail

      Asosiy email*

      mail

      I_ivanov@domain.ru

      PropertyContactWorkPhone

      Asosiy ish telefoni

      telephoneNumber

      +7 495 123-45-67

      PropertyContactOtherWorkPhone

      Boshqa ish telefonlari

      otherTelephone

      +7 495 765-43-21

      PropertyContactMobile

      Asosiy mobil telefon

      mobile

      +7 012 345-67-89

      PropertyContactOtherMobile

      Boshqa mobil telefon

      otherMobile

      +7 987 654-32-10

      PropertyContactIpPhone

      Asosiy IP-telefon

      ipPhone

      7495 012-34-56

      PropertyContactOtherIpPhone

      Boshqa IP-telefonlar

      otherIpPhone

      7495 987-65-43

      PropertyContactAddress1

      Manzil — Ko‘cha

      streetAddress

      Yubileynaya

      PropertyContactAddress2

      Manzil — Shahar

      l

      Podolsk

      PropertyContactAddress3

      Manzil — Region

      st

      Moskva oblasti

      PropertyContactAddress4

      Manzil — Indeks

      postalCode

      142121

      (*) Asosiy bo‘lmagan email — smtp: prefiksli manzillar (proxyAddresses Active Directory) — qayta belgilab bo‘lmaydi. Lekin ContactIgnoreProxyAddresses parametrni true qiymati bilan kiritib, ularni o‘chirish mumkin.

      PropertyContact bilan boshlanadigan parametrlarni bir necha marta ko‘rsatish mumkin — bunday holda parametrning qiymati ro‘yxat bo‘ladi. Bunda atributlar tartibi muhim.

      Bu parametrlarning har birini qiymat sifatida - (minus) belgisini ko‘rsatish orqali ham o‘chirish mumkin. Masalan, “Lavozim” atributini sinxronlashni o‘chirish uchun PropertyContactTitle = - ni ko‘rsatish kerak.

    12. Xizmatni birinchi marta ishga tushirish oldidan DryRun parametri qiymatini true ga almashtiring, agar oldinroq (b. 2.4) uni false ga o‘zgartirgan bo‘lsangiz. Xizmatni ishga tushirish davriyligi UpdateEveryMins = N parametri bilan belgilanadi, bunda N — daqiqali interval. Moslama orqali xizmatni ishga tushiring va log faylini tahlil qiling.

      Loglardagi tizimli xabarlar

      Bildirishnoma

      Natija

      CORE Update user: user@domain.ru (Active:true -> false)

      Foydalanuvchi bloklanadi.

      SCIM Update user

      Yandex katalogdagi foydalanuvchi atributlarini o‘zgartirish.

      SCIM Add user

      Foydalanuvchini Yandex katalogiga kiritish.

      CORE Users: added 0, removed 3 237, modified 0

      Kiritildi — 0, bloklandi — 3237, o‘zgartirildi — 0.

      SCIM GET Users: Response is successful

      Foydalanuvchilar Yandex katalogidan muvaffaqiyatli o‘qildi.

      AD Received user count: N

      Active Directorydan N foydalanuvchi yuklab olindi.

      AD Received groups count: N

      Active Directorydan N guruh yuklab olindi.

      AD_CONFIG Wrong line N

      Konfiguratsiya fayli N qatorida xatolik.

      AD Received contacts count: N

      Active Directorydan N kontakt yuklab olindi.

      SCIM Add SharedContact:

      Yandex katalogiga kontaktni kiritish.

  3. Konfiguratsiya faylidagi o‘zgarishlar qo‘llanilishi uchun xizmatni to‘xtating va dasturni qayta ishga tushiring. Buni qanday bajarish mumkin

Sozlamalarini o‘zgartirish

Sozlamalarni o‘zgartirishni xohlasangiz, konfiguratsiya fayliga o‘zgartirish kiriting, keyin esa YandexADSCIM xizmatini buyruq qatori yoki ko‘rsatmalar bo‘yicha vazifalar dispetcheri orqali qayta ishga tushiring.

Loglarni ko‘rib chiqish

Xizmatning barcha loglari %ProgramData%\Yandex\YandexADSCIM jildida saqlanadi.

ADSCIMni yangilash

Ilova avtomatik yangilanadi: birlamchi holatda konfiguratsiya faylida AutoUpdate = True qiymati ko‘rsatilgan yoki bu parametr mavjud emas, chunki True qiymati uning uchun birlamchi bo‘ladi.

Agar ilovani qo‘lda yangilashni xohlasangiz, AutoUpdate = False ko‘rsating. Endi ilovani yangilash uchun YandexADSCIM (yuklab olish) so‘nggi versiyasini yuklab olishingiz va o‘rnatish faylini ishga tushirishingiz kerak bo‘ladi.

ADSCIMni to‘xtatish va qayta ishga tushirish

YandexADSCIM — bu Windows xizmati, shuning uchun tizim ishga tushganda avtomatik ravishda bajariladi va foydalanuvchining holatiga bog‘liq bo‘lmaydi. Lekin uni qo‘lda o‘chirishingiz mumkin — buning uchun buyruq qatoriga (cmd.exe) sc stop yandexadscim ni kiriting yoki vazifalar menejerida To‘xtatish tugmasini bosing.

Xizmatni qayta ishga tushirish uchun buyruq qatoriga sc start yandexadscim ni kiriting. Shuningdek, Xizmatlar varag‘idagi vazifalar menejerida ADSCIMni qayta ishga tushirishingiz mumkin.

ADSCIMni o‘chirish

Agar xizmatni butunlay o‘chirib yuborishni xohlasangiz, sc delete yandexadscim buyrug‘idan foydalaning.

ADSCIM bilan ishlashda ehtimoliy holatlar

Holat

Natija

Foydalanuvchining Active Directory’dagi atributlari o‘zgardi, lekin unikal identifikatori o‘zgarmadi

Tizim Yandex katalogidagi atributlarni (asosiy pochta va NameID dan tashqari) yangilaydi.

Foydalanuvchining unikal identifikatori o‘zgardi

Tizim asl identifikatorli obyektni topa olmaydi va oldingi foydalanuvchini bloklaydi. Keyin tizim yangi identifikatorli foydalanuvchini qo‘shishga harakat qiladi, lekin foydalanuvchining logini oldingisi bilan band bo‘lgani uchun buni qila olmaydi. Agar bloklangan foydalanuvchi o‘chirilsa, tizim eski foydalanuvchidan hech qanday ma’lumotni ko‘chirmasdan yangisini qo‘shadi.

Foydalanuvchi Active Directory’da o‘chirildi

Foydalanuvchi Yandex katalogda bloklanadi.

Active Directory’da yangi foydalanuvchi

Foydalanuvchi tegishli atributlar bilan Yandex katalogga kiritiladi.

Yandex katalogdagi barcha foydalanuvchilar bloklandi

Bu sodir bo‘lishi mumkin, agar:

  • asosiy identifikatorning katagi o‘zgargan bo‘lsa;

  • qandaydir sabab bilan ilova Active Directory katalogida foydalanuvchilarni o‘qiy olmasa.

Yordam xizmatiga yozish

Autentifikatsiyani amalga oshirish imkonini beradigan tashkilot, kataloglar, foydalanuvchilar haqidagi ma’lumotlarni saqlash protokoli.

Turli tizimlar va ilovalarga ruxsat uchun yagona kirishni tashkillashga imkon beradigan Microsoft kompaniyasidan texnologiya. Active Directory federatsiyasi xizmatlari sharhi

Windows operatsion tizimi ishga tushganda bajariladigan ilova. (https://ru.wikipedia.org/wiki/Служба_Windows)

Internetda autentifikatsiya va avtorizatsiya qilingan ma’lumotlarini almashish imkonini beruvchi xavfsizlik standarti. SAML 2.0 asosida SSO qanday ishlaydi

Ma’lumotlarni serverga va serverdan uzatish uchun ishlatiladigan buyruq qatori vositasi. Uning yordamida veb-saytlar va API bilan o‘zaro aloqa qilish, ma’lumotlarni yuborish va qabul qilish, fayllarni yuklash va yuklab olish mumkin. cURL tavsifi

Kiruvchi tasdiq turi (yoki ingliz tilidagi AD FS interfeysi uchun Incoming claim type) katagida ko‘rsatiladigan va foydalanuvchi identifikatsiyasi uchun foydalaniladigan atributni sozlash haqida Tasdiqlarni taqqoslash sozlamasi (yoki ingliz tilidagi AD FS interfeysi uchun Claims Mapping sozlamasi) bo‘limida o‘qing.

Bir domen ichidagi pochta manzillari sinonimlari. Pochta qutilari aliaslari haqida

Tashkilot xodimlari Yandex 360 xizmatlaridan foydalanishi uchun ularga individual hisoblar kerak. Hisobni turli usullar, jumladan, ruxsatni boshqarish tizimi bilan avtomatik sinxronlash (masalan, Active Directory) orqali yaratish mumkin. Ko‘rsatmalar

Asosiy bo‘lmagan email — smtp: prefiksli manzillar (proxyAddresses Active Directory) — qayta belgilab bo‘lmaydi. Lekin ContactIgnoreProxyAddresses parametrni true qiymati bilan kiritib, ularni o‘chirish mumkin.

Serverda yangi resurs yaratish uchun API-so‘rov. Yangi obyektni yaratish yoki biror harakatni bajarish uchun ma’lumotlarni serverga yuborish uchun foydalaniladi.

Ma’lumotlarga aniq foydalanuvchi nomidan ruxsat beradigan maxsus kod.

UPN (User Principal Name) — bu hisob qaydi nomi, @ belgisi va tashkilot domenidan iborat foydalanuvchi nomi. UPN Active Directory va Azure AD kabi Microsoft xizmatlarida foydalanuvchi autentifikatsiyasi uchun foydalaniladi va pochta manzili bilan mos kelmasligi mumkin.