Какво е OIDC?
Научете повече за OpenID Connect (OIDC) – протокол за удостоверяване, който проверява самоличността на потребителите, когато те влизат в системата за достъп до цифрови ресурси.
Дефиниране на OpenID Connect (OIDC)
OpenID Connect (OIDC) е протокол за удостоверяване на самоличност, който е разширение на отвореното упълномощаване (OAuth) 2.0 за стандартизиране на процеса за удостоверяване и упълномощаване на потребителите, когато те се регистрират за достъп до цифрови услуги. OIDC осигурява удостоверяване на автентичността, което означава проверка на това дали потребителите са тези, за които се представят. OAuth 2.0 удостоверява кои системи са разрешени за достъп на тези потребители. OAuth 2.0 обикновено се използва, за да позволи на две несвързани приложения да обменят информация, без да се компрометират данните на потребителите. Например много хора използват своите имейл акаунти или акаунти в социалните мрежи, за да влязат в сайт на трета страна, вместо да създават ново потребителско име и парола. OIDC се използва и за осигуряване на единно влизане в системата. Организациите могат да използват сигурна система за управление на идентичности и достъп (IAM) като Microsoft Entra ID (предишна Azure Active Directory) като основен удостоверител на идентичности и след това да използват OIDC за предаване на това удостоверяване на други приложения. По този начин потребителите трябва да влязат само веднъж с едно потребителско име и парола за достъп до множество приложения.
Основни компоненти на OIDC
OIDC има шест основни компонента:
- Удостоверяването е процесът на проверка на това дали потребителят е този, за когото се представя.
- Клиентът е софтуерът, например уебсайт или приложение, който изисква кодове, използвани за удостоверяване на потребителя или за достъп до ресурс.
- Отчитащите страни са приложенията, които използват доставчици на OpenID за удостоверяване на потребителите.
- Кодовете за идентичност съдържат данни за идентичност, включително резултата от процеса на удостоверяване, идентификатор за потребителя и информация за това как и кога е удостоверен потребителят.
- Доставчиците на OpenID са приложенията, за които потребителят вече има акаунт. Тяхната роля в OIDC е да удостоверят автентичността на потребителя и да предадат тази информация на доверяващата се страна.
- Потребителите са хора или услуги, които искат да получат достъп до дадено приложение, без да създават нов акаунт или да предоставят потребителско име и парола.
Как работи удостоверяването на OIDC?
Удостоверяването OIDC работи, като позволява на потребителите да влизат в едно приложение и да получават достъп до друго. Например, ако даден потребител иска да създаде акаунт в новинарски сайт, той може да има възможност да използва Facebook за създаване на акаунта си, вместо да създава нов акаунт. Ако избере Facebook, той използва OIDC удостоверяване. Facebook, който е посочен като доставчик на OpenID, обработва процеса на удостоверяване и получава съгласието на потребителя да предостави конкретна информация, като например потребителски профил, на новинарския сайт, който е доверяващата се страна.
ID кодове
Доставчикът на OpenID използва идентификационни маркери, за да предава резултатите от удостоверяването и всякаква съответна информация на доверяващата се страна. Примерите за вида на изпращаните данни включват идентификационен номер, имейл адрес и име.
Обхват
Обхватът определя какво може да прави потребителят със своя достъп. OIDC предоставя стандартни обхвати, които определят неща като това за коя доверяваща се страна е генериран код, кога е генериран код, кога изтича срокът му на валидност и силата на криптиране, използвана за удостоверяване на потребителя.
Типичният процес на удостоверяване на OIDC включва следните стъпки:
- Потребителят отива в приложението, до което иска да получи достъп (доверяващата се страна).
- Потребителят въвежда своето потребителско име и парола.
- Доверяващата се страна изпраща заявка до доставчика на OpenID.
- Доставчикът на OpenID потвърждава идентификационните данни на потребителя и получава разрешение.
- Доставчикът на OpenID изпраща на доверяващата се страна идентификационен знак и често – знак за достъп.
- Доверяващата се страна изпраща символа за достъп до устройството на потребителя.
- На потребителя се предоставя достъп въз основа на информацията, предоставена в маркера за достъп и доверяващата се страна.
Какво представляват потоците на OIDC?
Потоците на OIDC определят начина, по който кодовете се изискват и доставят на доверяващата се страна. Няколко примера:
Потоци на OIDC удостоверяване: Доставчикът на OpenID изпраща уникален код на проверяващата страна. След това проверяващата страна изпраща уникалния код обратно на OpenID доставчика в замяна на кода. Този метод се използва, за да може доставчикът на OpenID да провери доверяващата се страна, преди да изпрати кода. При този метод браузърът не може да види кода, което спомага за неговата защита.
Потоци на OIDC удостоверяване с PKCE разширение: Този поток е същият като потока за удостоверяване OIDC, с изключение на това, че използва разширение за публичен ключ за обмен на код (PKCE), за да изпраща комуникациите като хеш. Това намалява вероятността маркерът да бъде прихванат.
Идентификационни данни на клиента: Този поток осигурява достъп до уеб API чрез използване на самоличността на самото приложение. Обикновено се използва за комуникация между сървъри и автоматизирани скриптове, които не изискват взаимодействие с потребителя.
Код на устройство: Този поток позволява на потребителите да влизат и да имат достъп до уеб базирани API на свързани с интернет устройства, които нямат браузъри или имат неудобна за работа клавиатура, например смарт телевизор.
Допълнителните потоци, като например имплицитния поток OIDC, който е предназначен за приложения, базирани на браузър, не се препоръчват, тъй като представляват риск за защитата.
OIDC срещу OAuth 2.0
OIDC е изграден върху OAuth 2.0, за да се добави удостоверяване. Първо е разработен протоколът OAuth 2.0, а след това е добавен OIDC, за да се разширят възможностите му. Разликата между двата протокола е, че OAuth 2.0 осигурява оторизация, а OIDC – удостоверяване. OAuth 2.0 е това, което позволява на потребителите да получат достъп до доверяваща се страна, като използват своя акаунт в доставчик на OpenID, а OIDC е това, което позволява на доставчика на OpenID да предаде потребителски профил на доверяващата се страна. OIDC също така позволява на организациите да предлагат на своите потребители еднократно влизане в системата.
Ползи от удостоверяването на OIDC
Чрез намаляване на броя на акаунтите, от които потребителите се нуждаят за достъп до приложения, OIDC предлага няколко предимства както за физическите лица, така и за организациите:
Намалява риска от кражба на пароли
Когато на хората се налага да използват няколко пароли за достъп до приложенията, които са им необходими за работа и за личния им живот, те често избират лесни за запомняне пароли, като например Password1234!, и използват една и съща парола за няколко акаунта. Това увеличава риска лош играч да отгатне паролата. А след като знае паролата за един акаунт, той може да получи достъп и до други акаунти. Като се намали броят на паролите, които някой трябва да запомни, се увеличава вероятността той да използва по-силна и по-сигурна парола.
Подобряване на контрола на сигурността
Съсредоточавайки удостоверяването в едно приложение, организациите могат също така да защитят достъпа в няколко приложения със силни контроли на достъпа. OIDC поддържа двуфакторно и многофакторно удостоверяване, което изисква хората да потвърждават самоличността си, като използват поне два от следните елементи:
Нещо, което потребителят знае, обикновено парола.
Нещо, което има, като например надеждно устройство, което не се дублира лесно, като телефон или хардуерен маркер.
Нещо, което е, например пръстов отпечатък или сканиране на лице.
Многофакторното удостоверяване е доказан метод за намаляване на компрометирането на акаунти. Организациите могат също така да използват OIDC за прилагане на други мерки за сигурност, като управление на привилегирования достъп, защита на пароли, защита на влизане или защита на идентичността, в множество приложения.
Опростява работата на потребителя
Присъединяването към множество акаунти през деня може да отнеме време и да изнерви хората. Освен това, ако изгубят или забравят паролата си, нейното възстановяване може допълнително да наруши производителността. Предприятията, които използват OIDC, за да осигурят на служителите си единно влизане, помагат да се гарантира, че служителите им прекарват повече време в продуктивна работа, вместо да се опитват да получат достъп до приложения. Организациите също така увеличават вероятността клиентите да се регистрират и да използват техните услуги, ако позволят на лицата да използват своя акаунт в Microsoft, Facebook или Google, за да влязат в системата.
Стандартизиране на удостоверяването
Фондацията OpenID, в която участват известни марки като Microsoft и Google, създаде OIDC. Той е проектиран да бъде оперативно съвместим и поддържа много платформи и библиотеки, включително iOS, Android, Microsoft Windows и основните доставчици на облачни услуги и идентификация.
Оптимизира управлението на идентичността
Организациите, които използват OIDC, за да осигурят единна регистрация за своите служители и партньори, могат да намалят броя на решенията за управление на идентичността, които трябва да управляват. Това улеснява проследяването на променящите се разрешения и позволява на администраторите да използват един интерфейс за прилагане на политики и правила за достъп в множество приложения. Компаниите, които използват OIDC, за да позволят на хората да влизат в техните приложения, използвайки доставчик на OpenID, намаляват броя на идентичностите, които изобщо трябва да управляват.
Примери и случаи на употреба на OIDC
Много организации използват OIDC, за да осигурят сигурно удостоверяване в уеб и мобилни приложения. Ето няколко примера:
Когато потребител се регистрира за акаунт в Spotify, му се предлагат три опции: регистриране с Facebook, регистриране с Google, регистриране с имейл адрес. Потребителите, които избират да се регистрират с Facebook или Google, използват OIDC, за да създадат акаунт. Те ще бъдат пренасочени към избрания от тях доставчик на OpenID (Google или Facebook) и след като влязат, доставчикът на OpenID ще изпрати на Spotify основни данни за профила. Не е необходимо потребителят да създава нов акаунт за Spotify и паролите му остават защитени.
LinkedIn също така предоставя възможност на потребителите да създадат профил, използвайки своя профил в Google, вместо да създават отделен профил за LinkedIn.
Една компания желае да осигури единно влизане за служителите, които трябва да имат достъп до Microsoft Office 365, Salesforce, Box и Workday, за да вършат работата си. Вместо да изисква от служителите да създават отделен акаунт за всяко от тези приложения, компанията използва OIDC, за да осигури достъп и до четирите. Служителите създават един акаунт и всеки път, когато влязат, получават достъп до всички приложения, които са им необходими за работа.
Внедряване на OIDC за сигурно удостоверяване
OIDC осигурява протокол за удостоверяване за опростяване на влизането в системата за потребителите и повишаване на сигурността. Това е чудесно решение за предприятия, които искат да насърчат клиентите да се регистрират за техните услуги, без да се налага да управляват акаунти. То също така дава възможност на организациите да предлагат на своите служители и други потребители сигурно единично влизане в множество приложения. Организациите могат да използват решения за идентичност и достъп, които поддържат OIDC, като например Microsoft Entra, за да управляват всички свои идентичности и политики за сигурност на удостоверяването на едно място.
Научете повече за Microsoft Security
-
Microsoft Entra ID
Свържете по сигурен начин служителите, клиентите и партньорите с техните приложения, устройства и данни с решение за управление на идентичността и достъпа в облака.
-
Управление на Microsoft Entra ID
Автоматично се уверявайте, че правилните хора имат правилния достъп до правилните приложения и услуги.
-
Проверен ИД на Microsoft Entra
Осигуряване на децентрализирани идентичности с управлявана услуга за проверими пълномощия, базирана на отворени стандарти.
-
ИД на работното натоварване на Microsoft Entra
Управлявайте и защитавайте самоличностите, предоставени на приложения и услуги.
-
Често задавани въпроси
-
OIDC е протокол за удостоверяване на самоличност, който работи с OAuth 2.0, за да стандартизира процеса на удостоверяване и оторизиране на потребителите, когато те влизат в системата за достъп до цифрови услуги. OIDC осигурява удостоверяване на автентичността, което означава да се провери дали потребителите са тези, за които се представят. OAuth 2.0 удостоверява кои системи са разрешени за достъп на тези потребители. OIDC и OAuth 2.0 обикновено се използват, за да позволят на две несвързани приложения да споделят информация, без да компрометират данните на потребителя.
-
Както OIDC, така и езикът за маркиране на твърдения за сигурност (SAML) са протоколи за удостоверяване на самоличност, които позволяват на потребителите да влизат сигурно веднъж и да имат достъп до множество приложения. SAML е по-стар протокол, който е широко разпространен за еднократно влизане в системата. Той предава данни, като използва XML формат. OIDC е по-нов протокол, който използва JSON формат за предаване на потребителски данни. OIDC набира все по-голяма популярност, тъй като е по-лесен за прилагане от SAML и работи по-добре с мобилни приложения.
-
OIDC е съкращение на протокола OpenID Connect, който е протокол за удостоверяване на самоличност, използван, за да позволи на две несвързани приложения да споделят информация за потребителския профил, без да се компрометират потребителските данни.
-
OIDC е изграден върху OAuth 2.0, за да се добави удостоверяване. Първо е разработен протоколът OAuth 2.0, а след това е добавен OIDC, за да се разширят възможностите му. Разликата между двата протокола е, че OAuth 2.0 осигурява оторизация, а OIDC – удостоверяване. OAuth 2.0 е това, което позволява на потребителите да получат достъп до доверяваща се страна, като използват своя акаунт в доставчик на OpenID, а OIDC е това, което позволява на доставчика на OpenID да предаде потребителски профил на доверяващата се страна. Тази функционалност също така позволява на организациите да предлагат на своите потребители единно влизане в системата. Потоците на OAuth 2.0 и OIDC са сходни, но използват малко по-различна терминология.
Типичният поток на OAuth 2.0 включва следните стъпки:
- Потребителят отива в приложението, до което иска да получи достъп (сървъра с ресурси).
- Ресурсният сървър пренасочва потребителя към приложението, в което той има акаунт (клиента).
- Потребителят влиза в системата, като използва данните си за клиента.
- Клиентът потвърждава достъпа на потребителя.
- Клиентът изпраща знак за достъп до сървъра на ресурсите.
- Ресурсният сървър предоставя достъп на потребителя.
Типичният поток на OIDC включва следните стъпки:
- Потребителят отива в приложението, до което иска да получи достъп (доверяващата се страна).
- Потребителят въвежда своето потребителско име и парола.
- Доверяващата се страна изпраща заявка до доставчика на OpenID.
- Доставчикът на OpenID потвърждава идентификационните данни на потребителя и получава разрешение.
- Доставчикът на OpenID изпраща на доверяващата се страна идентификационен знак и често – знак за достъп.
- Доверяващата се страна изпраща символа за достъп до устройството на потребителя.
- На потребителя се предоставя достъп въз основа на информацията, предоставена в маркера за достъп и доверяващата се страна.
-
Доставчикът на OpenID използва идентификационни кодове, за да предава резултатите от удостоверяването и всякаква съответна информация на приложението на доверяващата се страна. Примерите за вида на изпращаните данни включват идентификационен номер, имейл адрес и име.
Следвайте Microsoft Security