| 123456789101112131415161718192021222324252627282930313233343536373839 |
- //-----------------------------------------------------------------------------
- // Copyright (c) Microsoft Corporation. All rights reserved.
- //-----------------------------------------------------------------------------
- namespace System.ServiceModel.Security
- {
- using System.IdentityModel.Claims;
- using System.ServiceModel;
- using System.IdentityModel.Policy;
- using System.IdentityModel.Selectors;
- using System.IdentityModel.Tokens;
- using System.ServiceModel.Security.Tokens;
- using System.Net;
- using System.Security.Principal;
- public class SspiSecurityTokenProvider : SecurityTokenProvider
- {
- internal const bool DefaultAllowNtlm = true;
- internal const bool DefaultExtractWindowsGroupClaims = true;
- internal const bool DefaultAllowUnauthenticatedCallers = false;
- SspiSecurityToken token;
- // client side ctor
- public SspiSecurityTokenProvider(NetworkCredential credential, bool allowNtlm, TokenImpersonationLevel impersonationLevel)
- {
- this.token = new SspiSecurityToken(impersonationLevel, allowNtlm, credential);
- }
- // service side ctor
- public SspiSecurityTokenProvider(NetworkCredential credential, bool extractGroupsForWindowsAccounts, bool allowUnauthenticatedCallers)
- {
- this.token = new SspiSecurityToken(credential, extractGroupsForWindowsAccounts, allowUnauthenticatedCallers);
- }
- protected override SecurityToken GetTokenCore(TimeSpan timeout)
- {
- return this.token;
- }
- }
- }
|