Якнайбільше нетехнічних:
Якби ви описували що-небудь про те, хто ви є, і що вам дозволялося бачити чи робити, кожна з цих речей була б чимось, на що ви «стверджуєте», що є правдою, і, таким чином, кожна «річ» у цьому списку була б « претензія ".
Щоразу, коли ви скажете комусь щось про себе або «заявите», що вам дозволяється бачити чи робити щось, ви передаєте їм свій список претензій. Вони з владою перевірять, що ваші претензії є правдивими, і якщо вони є, вони вірять будь-чому в цьому списку претензій. Отже, якщо ви стверджуєте, що ви Брэд Пітт, у вашому списку претензій йдеться про те, що ви Брэд Пітт, і це було підтверджено авторитетом, що всі ваші вимоги справджуються - тоді вони повірять, що ви Бред Пітт разом з все інше в цьому списку.
Претензія : те, що ви стверджуєте, що є правдою. Це може бути інформація або опис дозволу, на який ви претендуєте. Системі, до якої ви пред'являєте свої претензії, потрібно лише зрозуміти, що таке / означає претензію, а також мати змогу перевірити їх у владі.
Повноваження : Система, яка поєднує ваш список претензій разом і підписує його, в основному каже: "У моїх повноваженнях все в цьому списку відповідає дійсності". Поки система, яка читає претензії, зможе перевірити повноваження, що підпис правильний, тоді все в списку претензій буде вважатися справжнім і правдивим.
Крім того, давайте не називатимемо це "автентифікацією на основі претензій", а назвемо її "ідентифікація на основі претензій".
Трохи технічніше:
Тож тепер у цьому процесі ви автентифікуєтесь за допомогою якогось механізму (ім’я користувача / пароль, секрет клієнта, сертифікат тощо), і це дає вам знак, який підтверджує, що ви є тим, ким ви говорите. Потім ви торгуєте цим маркером доступу на маркер ідентифікатора. Цей процес використовуватиме вашу особу для пошуку та складання списку претензій, підписує його, а потім передасть вам маркер ідентифікатора, який містить усі ваші претензії.
На етапі авторизації , залежно від того, як він реалізований, ресурс розгляне ваш маркер ідентифікатора (претензії), а потім перевірить, чи є у вас необхідні претензії для доступу до цього ресурсу.
Так, наприклад, якщо ресурс "CastleBlack / CommandersTower" каже, що "вам доведеться мати доступ до замкового чорного і бути лордом, тоді він перегляне ваш список претензій, щоб побачити, чи обоє ці речі справжні.
Як бачите, "претензії" можуть бути будь-якими. Це може бути роль, це може бути факт, це може бути прапор. Це лише перелік пар ключ-значення, а "значення" необов'язково. Іноді мова йде лише про те, чи існує претензія:
claims : [
{"type": "name", "value": "Jon Snow"},
{"type": "home", "value": "Winterfell, The North, Westeros"},
{"type": "email", "value": "jon@nightswatch-veterans.org"},
{"type": "role", "value": "veteran;deserter;"},
{"type": "department", "value": "none"},
{"type": "allowEntry", "value": "true"},
{"type": "access", "value": "castleblack;eastwatch;"}
]
Тож якщо Джон увійшов і спробує отримати доступ до описаного вище ресурсу, йому буде відмовлено, оскільки, хоча він є тим, за кого він говорить, і у нього є доступ до замку чорних, він більше не є командиром лорда і не має явного доступу до командирська вежа, і тому не може неявно увійти до вежі командира.
Більш конкретно, "CastleBlack", ймовірно, буде [більшим] обсягом, і кожна область буде конкретним дозволом, але це інша дискусія.
Як кожна програма працює з доступом, буде різною, але вона буде використовувати претензії для цього.