My question boils down to, can I refresh the user's Claims when I switch between Apps? From what I can tell the answer is most likely "no". I've done the dance to add "claimTypeRequired" but that isn't helpful.
Say I have multiple Applications, App1, App2, App3, App4, App5.
It appears AD FS is not hit again once you're authenticated by any App and there's no way around that short of signing out, yeah? So with that thinking, I have to get all the Claims for all the Apps regardless which App I sign into. As a side note, I'm creating these Claims via a SQL stored procedure from AD FS. usp_GetAppClaims @AppID = 1, @UserGuid = 'GUID'
I store a set of claims for each App in a respective URI, that contains multiple values. Similar to the "Roles" claim. For example:
- http://schemas.MyCompany.com/identity/claims/App1
-- Value1
-- Value2 - http://schemas.MyCompany.com/identity/claims/App2
-- Value1
-- Value2
-- Value3 - http://schemas.MyCompany.com/identity/claims/App3
- http://schemas.MyCompany.com/identity/claims/App4
- http://schemas.MyCompany.com/identity/claims/App5
Am I making this more difficult than it needs to be? I'm slightly worried about Token size if I'm required to have all the Claims. 20 Apps, each with 10-50 Claims... 4kb Cookie max right? Maybe that's irrelevant for the most part.