Istnieje wiele systemów, zwłaszcza systemów STS / federacyjnych, które robią to w ten sposób:
- jedno twierdzenie, które opisuje użytkownika wyjątkowo
- asortyment roszczeń opisujących ogólne rzeczy koncepcyjne, do których mają dostęp (i inne osoby)
Dane „profilu” użytkownika w aplikacji mogą nie zostać przetłumaczone na / ze źródła uwierzytelnienia, którego używasz, i nie możesz używać tych samych punktów końcowych przez cały czas lub wszystkich użytkowników.
Jeśli znasz stare uwierzytelnianie formularzy, jest ono analogiczne do modelu nazwy użytkownika i roli, a wiele wbudowanych elementów nadal wygląda tak, jeśli odpowiednio używasz System.Security.Claims.ClaimTypy nazwy i roli.
Ani stary, ani nowy model nie dawał wiele po wyjęciu z pudełka roszczeń lub dziedziczenia ról, ale nie jest to szczególnie trudne do wdrożenia, a jego wdrożenie pozwala ograniczyć liczbę roszczeń lub ról, które trzeba zachować w grze od żądania poprosić.
Jeśli Twoja aplikacja musi śledzić datę urodzin, ale nie musi jej używać w mechanizmie bezpieczeństwa, to naprawdę nie ma żadnych korzyści z utrzymywania jej w ramach dochodzenia roszczeń. Umieść go w osobnym zestawie danych profilu lub coś takiego.
Jeśli twoja aplikacja musi otrzymać datę urodzin jako roszczenie z innego systemu, szukasz czegoś bardziej przypominającego dostosowanie federatedAuthentication lub pozostawienie dodatkowego roszczenia.