Càng phi kỹ thuật càng tốt:
Nếu bạn mô tả bất cứ điều gì về con người bạn và những gì bạn được phép nhìn thấy hoặc làm, thì mỗi điều đó sẽ là một điều gì đó mà bạn "tuyên bố" là đúng, và do đó mỗi "điều" trong danh sách đó sẽ là " yêu cầu".
Bất cứ khi nào bạn nói với ai đó về bản thân hoặc "yêu cầu" rằng bạn được phép nhìn thấy hoặc làm điều gì đó, bạn đưa cho họ danh sách yêu cầu của bạn. Họ sẽ xác minh với cơ quan có thẩm quyền rằng khiếu nại của bạn là đúng và nếu đúng, họ sẽ tin bất cứ điều gì trong danh sách khiếu nại đó. Vì vậy, nếu bạn cho rằng bạn là Brad Pitt, danh sách khiếu nại của bạn nói rằng bạn là Brad Pitt và được xác nhận với thẩm quyền rằng các khiếu nại của bạn đều đúng - thì họ sẽ tin rằng bạn là Brad Pitt cùng với bất cứ điều gì khác trong danh sách đó.
Yêu cầu : những gì bạn tuyên bố là đúng. Đây có thể là một phần thông tin hoặc mô tả về sự cho phép mà bạn tuyên bố có. Hệ thống mà bạn trình bày khiếu nại của mình chỉ cần hiểu yêu cầu / nghĩa là gì và cũng có thể xác minh với cơ quan có thẩm quyền.
Thẩm quyền : Hệ thống kết hợp danh sách các yêu cầu của bạn với nhau và ký vào đó về cơ bản là "Theo thẩm quyền của tôi, mọi thứ trong danh sách này là đúng." Miễn là hệ thống đọc các khiếu nại có thể xác minh với cơ quan có thẩm quyền rằng chữ ký là chính xác, thì mọi thứ trong danh sách khiếu nại sẽ được coi là xác thực và đúng.
Ngoài ra, chúng ta đừng gọi nó là "xác thực dựa trên yêu cầu", thay vào đó hãy gọi nó là "nhận dạng dựa trên yêu cầu".
Kỹ thuật hơn một chút:
Vì vậy, bây giờ trong quá trình này, bạn xác thực bằng cách sử dụng một số loại cơ chế (tên người dùng / mật khẩu, bí mật khách hàng, chứng chỉ, v.v.) và điều đó mang lại cho bạn một mã thông báo chứng minh bạn là chính bạn. Sau đó, bạn giao dịch mã thông báo truy cập đó cho mã thông báo ID. Quá trình đó sẽ sử dụng danh tính của bạn để tìm và xây dựng danh sách các khiếu nại, ký tên và sau đó trao lại cho bạn mã thông báo ID có tất cả các khiếu nại của bạn.
Là bước ủy quyền , tùy thuộc vào cách triển khai, tài nguyên sẽ xem xét mã thông báo ID của bạn (khiếu nại) và sau đó kiểm tra xem bạn có yêu cầu cần thiết để truy cập tài nguyên đó không.
Vì vậy, ví dụ, nếu tài nguyên "CastleBlack / CommandersTower" nói rằng "bạn phải có quyền truy cập vào lâu đài đen và là chỉ huy của chúa, thì bạn sẽ xem xét danh sách yêu cầu của mình để xem liệu cả hai điều đó có đúng không.
Như bạn thấy, "yêu sách" có thể là bất cứ điều gì. Nó có thể là một vai trò, nó có thể là một thực tế, nó có thể là một lá cờ. Đây chỉ là một danh sách các cặp khóa-giá trị và "giá trị" là tùy chọn. Đôi khi chỉ là để xem nếu yêu cầu tồn tại:
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;"}
]
Vì vậy, nếu Jon đăng nhập và cố gắng truy cập vào tài nguyên được mô tả ở trên, anh ta sẽ bị từ chối bởi vì, trong khi anh ta nói anh ta là ai và anh ta có quyền truy cập vào lâu đài đen, anh ta không còn là chỉ huy của lãnh chúa và anh ta không có quyền truy cập rõ ràng vào tháp chỉ huy, và do đó không thể ngầm vào tháp chỉ huy của lãnh chúa.
Cụ thể hơn, "CastleBlack" có thể là một phạm vi [lớn hơn] và mỗi khu vực sẽ là một sự cho phép cụ thể, nhưng đó là một cuộc thảo luận khác nhau.
Làm thế nào mỗi ứng dụng xử lý quyền truy cập sẽ khác nhau, nhưng nó sẽ sử dụng các yêu cầu để làm điều đó.