I am not a SharePoint expert by any means, and it is very difficult for me to find the right information about this. Please help me!
I need a way to force the claim token set with the call to SPFederationAuthenticationModule.SetPrincipalAndWriteSessionToken to recount the claims on the token without to display the current user. Is there any way to do this?
Some information on why I am asking about this:
We use the user role and membership provider for authN / Z in our SharePoint 2010 user web application. Without going into the details of the reasons (which are complex), the role provider creates dynamically generated role names for the user based on the state of the user in the main application database; these roles represent user permissions and are used internally by SharePoint to determine user access to sites and site collections in an application.
There are ways in our application to change their permissions, effectively adding new roles through the role provider, giving the user additional access to the application. The problem we are facing is that auth, based on the requirements that we have to use in SP2010, pre-issues login permissions and encodes these permissions in session tokens - in fact, it forces us to ask the user to log out and return into the system before they can get their new permissions. This creates all sorts of usability problems, so my question is.
Is there a way to programmatically reconfigure a session token without unloading the user?
Or are we barking the wrong tree? On a normal ASP.NET normal site, I would use Forms Auth, which calculates the authorization for each request, and not at the login. Unfortunately, this is not like an option in SP2010, and I rather stick with SharePoint for now. Are there any other actions we can pursue?
source share