protected RepositoryOperationAuthorizationDecoratorBase( IAuthorizationContextProvider authorizationContextProvider, IEdFiAuthorizationProvider authorizationProvider) { _authorizationContextProvider = authorizationContextProvider; _authorizationProvider = authorizationProvider; }
/// <summary> /// Initializes a new instance of the <see cref="OwnershipInitializationCreateEntityDecorator{T}"/> class. /// </summary> /// <param name="next">The decorated instance for which authorization is being performed.</param> /// <param name="authorizationContextProvider">Provides access to the authorization context, such as the resource and action.</param> /// <param name="authorizationFilteringProvider">The component capable of authorizing the request, given necessary context.</param> /// <param name="authorizationFilterDefinitionProvider"></param> /// <param name="explicitObjectValidators"></param> /// <param name="authorizationBasisMetadataSelector"></param> /// <param name="securityRepository"></param> /// <param name="sessionFactory"></param> /// <param name="apiKeyContextProvider"></param> /// <param name="viewBasedSingleItemAuthorizationQuerySupport"></param> public OwnershipInitializationCreateEntityDecorator( ICreateEntity <T> next, IAuthorizationContextProvider authorizationContextProvider, IAuthorizationFilteringProvider authorizationFilteringProvider, IAuthorizationFilterDefinitionProvider authorizationFilterDefinitionProvider, IExplicitObjectValidator[] explicitObjectValidators, IAuthorizationBasisMetadataSelector authorizationBasisMetadataSelector, ISecurityRepository securityRepository, ISessionFactory sessionFactory, IApiKeyContextProvider apiKeyContextProvider, IViewBasedSingleItemAuthorizationQuerySupport viewBasedSingleItemAuthorizationQuerySupport) : base( authorizationContextProvider, authorizationFilteringProvider, authorizationFilterDefinitionProvider, explicitObjectValidators, authorizationBasisMetadataSelector, securityRepository, sessionFactory, apiKeyContextProvider, viewBasedSingleItemAuthorizationQuerySupport) { _next = Preconditions.ThrowIfNull(next, nameof(next)); _apiKeyContextProvider = Preconditions.ThrowIfNull(apiKeyContextProvider, nameof(apiKeyContextProvider)); }
protected RepositoryOperationAuthorizationDecoratorBase( IAuthorizationContextProvider authorizationContextProvider, IAuthorizationFilteringProvider authorizationFilteringProvider, IAuthorizationFilterDefinitionProvider authorizationFilterDefinitionProvider, IExplicitObjectValidator[] explicitObjectValidators, IAuthorizationBasisMetadataSelector authorizationBasisMetadataSelector, ISecurityRepository securityRepository, ISessionFactory sessionFactory, IApiKeyContextProvider apiKeyContextProvider, IViewBasedSingleItemAuthorizationQuerySupport viewBasedSingleItemAuthorizationQuerySupport) { _authorizationContextProvider = authorizationContextProvider; _authorizationFilteringProvider = authorizationFilteringProvider; _authorizationFilterDefinitionProvider = authorizationFilterDefinitionProvider; _explicitObjectValidators = explicitObjectValidators; _authorizationBasisMetadataSelector = authorizationBasisMetadataSelector; _sessionFactory = sessionFactory; _apiKeyContextProvider = apiKeyContextProvider; _viewBasedSingleItemAuthorizationQuerySupport = viewBasedSingleItemAuthorizationQuerySupport; // Lazy initialization _bitValuesByAction = new Lazy <Dictionary <string, Actions> >( () => new Dictionary <string, Actions> { { securityRepository.GetActionByName("Create").ActionUri, Actions.Create }, { securityRepository.GetActionByName("Read").ActionUri, Actions.Read }, { securityRepository.GetActionByName("Update").ActionUri, Actions.Update }, { securityRepository.GetActionByName("Delete").ActionUri, Actions.Delete } }); }
/// <summary> /// Initializes a new instance of the <see cref="GetEntityByKeyAuthorizationDecorator{T}"/> class. /// </summary> /// <param name="next">The decorated instance for which authorization is being performed.</param> /// <param name="authorizationContextProvider">Provides access to the authorization context, such as the resource and action.</param> /// <param name="authorizationFilteringProvider"></param> /// <param name="authorizationFilterDefinitionProvider"></param> /// <param name="explicitObjectValidators"></param> /// <param name="authorizationBasisMetadataSelector"></param> /// <param name="securityRepository"></param> /// <param name="sessionFactory"></param> /// <param name="apiKeyContextProvider"></param> /// <param name="viewBasedSingleItemAuthorizationQuerySupport"></param> public GetEntityByKeyAuthorizationDecorator( IGetEntityByKey <T> next, IAuthorizationContextProvider authorizationContextProvider, IAuthorizationFilteringProvider authorizationFilteringProvider, IAuthorizationFilterDefinitionProvider authorizationFilterDefinitionProvider, IExplicitObjectValidator[] explicitObjectValidators, IAuthorizationBasisMetadataSelector authorizationBasisMetadataSelector, ISecurityRepository securityRepository, ISessionFactory sessionFactory, IApiKeyContextProvider apiKeyContextProvider, IViewBasedSingleItemAuthorizationQuerySupport viewBasedSingleItemAuthorizationQuerySupport) : base( authorizationContextProvider, authorizationFilteringProvider, authorizationFilterDefinitionProvider, explicitObjectValidators, authorizationBasisMetadataSelector, securityRepository, sessionFactory, apiKeyContextProvider, viewBasedSingleItemAuthorizationQuerySupport) { _next = next; _viewBasedSingleItemAuthorizationQuerySupport = viewBasedSingleItemAuthorizationQuerySupport; }
public SetAuthorizationContextForPut( IAuthorizationContextProvider authorizationContextProvider, ISecurityRepository securityRepository, IResourceClaimUriProvider resourceClaimUriProvider) : base(authorizationContextProvider, securityRepository, resourceClaimUriProvider) { }
/// <summary> /// Initializes a new instance of the <see cref="GetEntityByKeyAuthorizationDecorator{T}"/> class. /// </summary> /// <param name="next">The decorated instance for which authorization is being performed.</param> /// <param name="authorizationContextProvider">Provides access to the authorization context, such as the resource and action.</param> /// <param name="authorizationProvider">The component capable of authorizing the request, given necessary context.</param> public GetEntityByKeyAuthorizationDecorator( IGetEntityByKey <T> next, IAuthorizationContextProvider authorizationContextProvider, IEdFiAuthorizationProvider authorizationProvider) : base(authorizationContextProvider, authorizationProvider) { _next = next; }
protected SetAuthorizationContextBase( IAuthorizationContextProvider authorizationContextProvider, ISecurityRepository securityRepository, IResourceClaimUriProvider resourceClaimUriProvider) { AuthorizationContextProvider = Preconditions.ThrowIfNull(authorizationContextProvider, nameof(authorizationContextProvider)); SecurityRepository = Preconditions.ThrowIfNull(securityRepository, nameof(securityRepository)); ResourceClaimUriProvider = Preconditions.ThrowIfNull(resourceClaimUriProvider, nameof(resourceClaimUriProvider)); }
public ImpersonationAuthorizationContext(HttpContextBase httpContext, IAuthorizationContextProvider authorizationContextProvider, IEmployerAccountTeamRepository employerAccountTeamRepository, IUserContext userContext) { _httpContext = httpContext; _authorizationContextProvider = authorizationContextProvider; _employerAccountTeamRepository = employerAccountTeamRepository; _userContext = userContext; }
public void TestInitialize() { directory = new ActiveDirectory(); cache = new AuthorizationInformationMemoryCache(); logger = Global.LogFactory.CreateLogger <AuthorizationInformationBuilder>(); powershell = Mock.Of <IPowerShellSecurityDescriptorGenerator>(); targetDataProvider = new TargetDataProvider(new TargetDataCache(), Global.LogFactory.CreateLogger <TargetDataProvider>()); authorizationContextProvider = new AuthorizationContextProvider(Mock.Of <IOptions <AuthorizationOptions> >(), directory, Global.LogFactory.CreateLogger <AuthorizationContextProvider>()); }
/// <summary> /// Initializes a new instance of the <see cref="CreateEntityAuthorizationDecorator{T}"/> class. /// </summary> /// <param name="next">The decorated instance for which authorization is being performed.</param> /// <param name="securityRepository">Provides access to the repository where the claims/actions are stored.</param> /// <param name="authorizationContextProvider">Provides access to the authorization context, such as the resource and action.</param> /// <param name="authorizationProvider">The component capable of authorizing the request, given necessary context.</param> public CreateEntityAuthorizationDecorator( ICreateEntity <T> next, ISecurityRepository securityRepository, IAuthorizationContextProvider authorizationContextProvider, IEdFiAuthorizationProvider authorizationProvider) : base(authorizationContextProvider, authorizationProvider) { _next = next; _securityRepository = securityRepository; }
/// <summary> /// Initializes a new instance of the <see cref="OwnershipInitializationCreateEntityDecorator{T}"/> class. /// </summary> /// <param name="next">The decorated instance for which authorization is being performed.</param> /// <param name="apiKeyContext"></param> /// <param name="authorizationContextProvider">Provides access to the authorization context, such as the resource and action.</param> /// <param name="authorizationProvider">The component capable of authorizing the request, given necessary context.</param> public OwnershipInitializationCreateEntityDecorator( ICreateEntity <T> next, IApiKeyContextProvider apiKeyContext, IAuthorizationContextProvider authorizationContextProvider, IEdFiAuthorizationProvider authorizationProvider) : base(authorizationContextProvider, authorizationProvider) { _next = Preconditions.ThrowIfNull(next, nameof(next)); _apiKeyContext = Preconditions.ThrowIfNull(apiKeyContext, nameof(apiKeyContext)); }
public AuthorizationInformationBuilder(IOptionsSnapshot <AuthorizationOptions> options, IDirectory directory, ILogger <AuthorizationInformationBuilder> logger, IPowerShellSecurityDescriptorGenerator powershell, IAuthorizationInformationMemoryCache authzCache, ITargetDataProvider targetDataProvider, IAuthorizationContextProvider authorizationContextProvider) { this.directory = directory; this.logger = logger; this.options = options.Value; this.powershell = powershell; this.authzCache = authzCache; this.targetDataProvider = targetDataProvider; this.authorizationContextProvider = authorizationContextProvider; }
public AuthorizationInformationBuilder(IOptionsSnapshot <AuthorizationOptions> options, ILogger <AuthorizationInformationBuilder> logger, IPowerShellSecurityDescriptorGenerator powershell, IAuthorizationInformationMemoryCache authzCache, IComputerTargetProvider computerTargetProvider, IAuthorizationContextProvider authorizationContextProvider, IAmsLicenseManager licenseManager) { this.logger = logger; this.options = options.Value; this.powershell = powershell; this.authzCache = authzCache; this.computerTargetProvider = computerTargetProvider; this.authorizationContextProvider = authorizationContextProvider; this.licenseManager = licenseManager; }
public GetDeletedResourceIdsAuthorizationDecorator( IGetDeletedResourceIds next, ISecurityRepository securityRepository, IAuthorizationContextProvider authorizationContextProvider, IEdFiAuthorizationProvider authorizationProvider) : base(authorizationContextProvider, authorizationProvider) { _next = next; _securityRepository = securityRepository; }
/// <summary> /// Initializes a new instance of the <see cref="GetEntityByKeyAuthorizationDecorator{T}"/> class. /// </summary> /// <param name="next">The decorated instance for which authorization is being performed.</param> /// <param name="sessionFactory">The NHibernate session factory used to manage session (database connection) context.</param> /// <param name="authorizationFilterContextProvider">Applies authorization-related filters for the entity on the current NHiberate session.</param> /// <param name="authorizationContextProvider">Provides access to the authorization context, such as the resource and action.</param> /// <param name="authorizationProvider">The component capable of authorizing the request, given necessary context.</param> public GetEntitiesBySpecificationAuthorizationDecorator( IGetEntitiesBySpecification <TEntity> next, ISessionFactory sessionFactory, IAuthorizationFilterContextProvider authorizationFilterContextProvider, IAuthorizationContextProvider authorizationContextProvider, IEdFiAuthorizationProvider authorizationProvider) : base(authorizationContextProvider, authorizationProvider) { _next = next; _sessionFactory = sessionFactory; _authorizationFilterContextProvider = authorizationFilterContextProvider; }
public ContractMethodInvocationHandler( IContractImplementationResolver contractImplementationResolver, IAuthorizationContextProvider authorizationContextProvider, IAuthorizationHandler authorizationHandler, IEnumerable <IInvocationSerializer> invocationSerializers, IMethodInvoker methodInvoker) { this.contractImplementationResolver = contractImplementationResolver; this.authorizationContextProvider = authorizationContextProvider; this.authorizationHandler = authorizationHandler; this.methodInvoker = methodInvoker; this.invocationSerializers = invocationSerializers.ToDictionary(x => x.MediaType); }
public void TestInitialize() { this.discoveryServices = new DiscoveryServices(Mock.Of <ILogger <DiscoveryServices> >()); directory = new ActiveDirectory(discoveryServices); cache = new AuthorizationInformationMemoryCache(); logger = Global.LogFactory.CreateLogger <AuthorizationInformationBuilder>(); powershell = Mock.Of <IPowerShellSecurityDescriptorGenerator>(); var mockLicenseManager = new Mock <IAmsLicenseManager>(); mockLicenseManager.Setup(l => l.IsEnterpriseEdition()).Returns(true); mockLicenseManager.Setup(l => l.IsFeatureCoveredByFullLicense(It.IsAny <LicensedFeatures>())).Returns(true); mockLicenseManager.Setup(l => l.IsFeatureEnabled(It.IsAny <LicensedFeatures>())).Returns(true); this.licenseManager = mockLicenseManager.Object; targetDataProvider = new ComputerTargetProvider(directory, new TargetDataProvider(new TargetDataCache(), Global.LogFactory.CreateLogger <TargetDataProvider>()), Global.LogFactory.CreateLogger <ComputerTargetProvider>()); authorizationContextProvider = new AuthorizationContextProvider(Mock.Of <IOptions <AuthorizationOptions> >(), Global.LogFactory.CreateLogger <AuthorizationContextProvider>(), discoveryServices); }
public OidcAuthenticationProvider(IOptions <OidcAuthenticationProviderOptions> options, ILogger <OidcAuthenticationProvider> logger, IDirectory directory, IHttpContextAccessor httpContextAccessor, IAuthorizationContextProvider authzContextProvider, IProtectedSecretProvider secretProvider) : base(logger, directory, httpContextAccessor, authzContextProvider) { this.secretProvider = secretProvider; this.options = options.Value; }
public WsFedAuthenticationProvider(IOptions <WsFedAuthenticationProviderOptions> options, ILogger <WsFedAuthenticationProvider> logger, IDirectory directory, IHttpContextAccessor httpContextAccessor, IAuthorizationContextProvider authzContextProvider) : base(logger, directory, httpContextAccessor, authzContextProvider) { this.options = options.Value; }
protected HttpContextAuthenticationProvider(IHttpContextAccessor httpContextAccessor, IDirectory directory, IAuthorizationContextProvider authzContextProvider) { this.httpContextAccessor = httpContextAccessor; this.directory = directory; this.authzContextProvider = authzContextProvider; }
public IwaAuthenticationProvider(IOptions <IwaAuthenticationProviderOptions> options, IDirectory directory, IHttpContextAccessor httpContextAccessor, IAuthorizationContextProvider authzContextProvider) : base(httpContextAccessor, directory, authzContextProvider) { this.options = options.Value; }
protected IdpAuthenticationProvider(ILogger logger, IDirectory directory, IHttpContextAccessor httpContextAccessor, IAuthorizationContextProvider authzContextProvider) : base(httpContextAccessor, directory, authzContextProvider) { this.logger = logger; this.directory = directory; }
public CertificateAuthenticationProvider(IOptionsSnapshot <CertificateAuthenticationProviderOptions> options, ILogger <CertificateAuthenticationProvider> logger, IDirectory directory, IHttpContextAccessor httpContextAccessor, IAuthorizationContextProvider authzContextProvider) : base(httpContextAccessor, directory, authzContextProvider) { this.directory = directory; this.logger = logger; this.cache = new MemoryCache(new MemoryCacheOptions { }); this.options = options.Value; }