Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GSF.Core: Use anonymous principal when accessing anonymous resources #363

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

StephenCWills
Copy link
Member

@StephenCWills StephenCWills commented Feb 7, 2025

The anonymous principal is used at the end of the authentication process if no SecurityProvider is found to assign to Request.User. But in the case of anonymous resources, the AuthenticationHandler allows the user passed in by IIS to leak into the pipeline. Then, in AuthorizeAsync(), the UserHasLogoutRole() function calls WindowsPrincipal.IsInRole() using a WindowsPrincipal representing a nonexistent Windows user on a group called logout that likely doesn't exist. If we replace the WindowsPrincipal with the anonymous principal, this should no longer happen.

Tested using SE Browser, and this change didn't cause any problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant