Удостоверяване срещу Федерация срещу SSO

Subway of Life 8/52 / Dennis Skley

Удостоверяване. Федерация. Единична регистрация (SSO). Споменавам тези понятия много пъти. Всъщност не съм дефинирал официално какво означават всеки от тези термини, въпреки че съм ги използвал многократно през моето писане - тези понятия са тясно свързани.

Удостоверяване: процес на дадено образувание (принципала), доказващ идентичността му на друго образувание (системата).

Единична регистрация (SSO): характеристика на механизъм за удостоверяване, свързан с идентичността на потребителя, използван за предоставяне на достъп от множество доставчици на услуги.

Федерация: общи стандарти и протоколи за управление и картографиране на идентичности на потребителите между доставчици на идентичност между организациите (и домейните на сигурността) чрез доверителни отношения (обикновено установени чрез цифрови подписи, криптиране и PKI).

Първо, управление на идентичността и достъпа (IAM) е управлението на проблемите на идентичността в организация на информационни технологии. Терминът IAM може да се отнася до екипа или отговорностите на екипа. В идеалния случай IAM е централизиран екип, но поради историята, политиката или организационната структура, които не винаги са възможни. Следващият най-добър вариант е да имате централен екип, посветен на всеки от проблемите „Бизнес към бизнес“ („B2B“), „Бизнес между потребители“ (B2C) и „Business to to Employe“ (B2E). Твърде често всяка отделна група се справя със собствените си отговорности по IAM - това създава допълнителни пречки за приемането на Федерация и SSO в една организация. IAM може да включва удостоверяване на потребителите и системата, упълномощаване на тези потребители и системи, предоставяне на потребител, одит на системи за идентичност, управление на хранилищата на потребителите (помислете за LDAP или Active Directory), правила за пароли и други проблеми.

заверка

Предоставянето на услуги за удостоверяване е основна отговорност на IAM. Удостоверяването е най-общо от трите концепции, споменати в заглавието на публикацията. От по-ранна публикация на thinkmiddleware.com дадох следното като определение за удостоверяване. Удостоверяването е процесът на образувание (Главния), доказващ своята идентичност на друго образувание (Системата). Principal може да бъде компютърна програма (пакетна работа, например, работи на заден план), краен потребител (човек), компютърна система, хардуер, мобилно устройство или други екзотични неща. Системата, за нашите цели, е всяка компютърна система, която изисква идентифициране на обаждащия се, преди да бъде предоставен достъп - често тази система ще бъде на сървър, понякога е на устройство (мобилен телефон, десктоп, лаптоп, таблет), понякога ще бъде да бъде в браузър. Главният предоставя идентификационни данни на системата, които трябва да бъдат удостоверени от системата, като се използва някакъв тип система за идентичност (включително потребителско хранилище, сървър на федерация или други). Акредитивните данни са чувствителна информация, която положително идентифицира клиента и би могла да се предлага в много форми:

  • Потребител и парола
  • Цифров подпис
  • X509v3 клиентски сертификат
  • pin # + произволен номер от FOB, Google Authenticate или подобна технология.

За пълнота, потребителско хранилище съдържа информация за Потребители (Главници), техните Удостоверения, Групи, членство в група и други атрибути на потребители. LDAP сървърът или активната директория са типичен пример за потребителско хранилище. По-подробни описания на тези понятия можете да намерите тук. По-рано дефинирах доставчик на Federation Server и идентичност в предишна публикация.

Единична регистрация

Единичното вписване (SSO) е характеристика на механизма за удостоверяване, свързан с идентичността на потребителя, използван за предоставяне на достъп от множество доставчици на услуги. SSO позволява един процес на удостоверяване (управляван от един доставчик на идентичност, сървър на директории или друг механизъм за удостоверяване) да се използва в множество системи (доставчици на услуги) в рамките на една организация или в множество организации. Този единен механизъм за удостоверяване може да бъде:

  • LDAP сървър, Active Directory, база данни или подобен сървър на директории
  • система, която генерира и предава надежден маркер около приложения за целите на удостоверяването.
  • Понякога терминът SSO се използва за описване на влизане в приложения с мениджър на пароли.
  • Преди 2005 г. SSO може да се използва за означаване на общ набор от идентификационни данни, използвани в множество системи (вероятно с някакъв тип асинхронна система за синхронизиране на пароли), но тези идентификационни данни трябваше да бъдат предоставени от потребителя, за да влезете във всяка отделна система - в някои контексти, това вероятно все още е така.
  • Федерация, както е описано по-долу.

Single Sign On (SSO) се занимава с удостоверяване и техническата оперативна съвместимост на участващите участници за предоставяне на общите идентификационни данни за вход в системите.

SSO решение, базирано на Directory Server, за няколко приложения изглежда нещо като следната диаграма.

SSO чрез общ сървър на директории

Друг пример за SSO е N доставчици на услуги (SP) в рамките на организация, доверяваща се на един доставчик на идентичност (IdP), изглежда нещо като следното (това всъщност е федерация за идентичност, вижте следващия раздел).

N SPs, доверяващи се на един IdP

федерация

Федералното управление на идентичността е поддисциплина на IAM, но обикновено същият екип (и) участва в неговото подпомагане. Федерацията е вид SSO, където участниците обхващат множество организации и области на сигурност.

От спецификацията на WS-Federation (един от многобройните протоколи за SSO, които позволяват федерация) имаме: „Целта на федерацията е да позволи главните идентичности и атрибути на сигурността да се споделят през границите на доверие в съответствие с установените политики.“ Това е добро описание на федерация като цяло; това включва наличието на общи стандарти и протоколи за управление и картографиране на идентичности на потребителите между доставчици на идентичност между организациите (и домейните на сигурността) чрез доверителни отношения (обикновено установени чрез цифрови подписи, криптиране и PKI). Федерацията е връзката на доверие между тези организации; тя се занимава с това къде всъщност се съхраняват идентификационните данни на потребителя и как надеждните трети страни могат да се удостоверят срещу тези идентификационни данни, без всъщност да ги виждат.

Връзката с федерацията може да се осъществи чрез един от няколко различни протокола, включително (но не само):

  • SAML1.1
  • SAML2
  • WS-федерация
  • OAuth2
  • OpenID Connect
  • WS-Trust
  • Различни собствени протоколи

Федерацията може да приеме много форми. В рамките на организация (отдели, бизнес звена) моделите могат да изглеждат така:

  • N Доставчици на услуги (СП) в организация, доверяващи се на един доставчик на идентичност (IdP) - вижте диаграмата в последния раздел.
  • N SPs в множество организации, доверяващи се на един идентификационен номер на трета страна
N SPs в множество организации, доверяващи се на един идентификационен номер на трета страна
  • N IdP в рамките на организация, доверена на един SP.
N IdP в рамките на организация, доверена на един SP
  • N IdP в рамките на организация, доверяваща се на един IdP
N IdP в рамките на организация, доверяваща се на един IdP
  • N SP (нека ги наречем доставчици на API) в множество организации, доверяващи се на един IdP, който след това се доверява на обща система (като например шлюз на API)
N SP в множество организации, доверяващи се на един IdP, който от своя страна се доверява на обща система (API Gateway)
  • Identity Broker (IdP управлява взаимоотношения между) с N SPs и N IdPs, обхващащи множество организации с взаимосвързани федерационни връзки.
Модел на идентичност на брокера с N SPs и N IdPs

През 2017 г. и след това всички удостоверяване на крайния потребител трябва да включват Single Sign On с добре познат продукт на доставчика на идентичност в корпоративното пространство. Същото се отнася най-вече и в други контексти. По същия начин, в предприятието, SSO с участници извън местната организация трябва да включва федерации. Използването на федерационни връзки между системи в рамките на различни организации трябва да се използва, тъй като има смисъл.

Изображение: Subway of Life 8/52 / Dennis Skley