Exemple #1
0
        public static bool IsEndpointEnabled(this EndpointsOptions options, EndpointName endpointName)
        {
            switch (endpointName)
            {
            case EndpointName.Authorize:
                return(options.EnableAuthorizeEndpoint);

            case EndpointName.CheckSession:
                return(options.EnableCheckSessionEndpoint);

            case EndpointName.Discovery:
                return(options.EnableDiscoveryEndpoint);

            case EndpointName.EndSession:
                return(options.EnableEndSessionEndpoint);

            case EndpointName.Introspection:
                return(options.EnableIntrospectionEndpoint);

            case EndpointName.Revocation:
                return(options.EnableTokenRevocationEndpoint);

            case EndpointName.Token:
                return(options.EnableTokenEndpoint);

            case EndpointName.UserInfo:
                return(options.EnableUserInfoEndpoint);

            default:
                return(false);
            }
        }
        public static bool IsEndpointEnabled(this EndpointsOptions options, Endpoint endpoint)
        {
            switch (endpoint?.Name)
            {
            case EndpointNames.Authorize:
                return(options.EnableAuthorizeEndpoint);

            case EndpointNames.CheckSession:
                return(options.EnableCheckSessionEndpoint);

            case EndpointNames.Discovery:
                return(options.EnableDiscoveryEndpoint);

            case EndpointNames.EndSession:
                return(options.EnableEndSessionEndpoint);

            case EndpointNames.Introspection:
                return(options.EnableIntrospectionEndpoint);

            case EndpointNames.Revocation:
                return(options.EnableTokenRevocationEndpoint);

            case EndpointNames.Token:
                return(options.EnableTokenEndpoint);

            case EndpointNames.UserInfo:
                return(options.EnableUserInfoEndpoint);

            default:
                // fall thru to true to allow custom endpoints
                return(true);
            }
        }
Exemple #3
0
        static async Task <ExitResult> Endpoints(EndpointsOptions o)
        {
            var r = await ApiClient.Endpoints();

            Info("Received {0} endpoints from {1}:", r.Count, GetRestServerUrl(o));
            foreach (var e in r)
            {
                WriteInfo("{0}", e.Key);
            }
            return(ExitResult.SUCCESS);
        }
        public static Boolean IsEndpointEnabled(this EndpointsOptions options, Endpoint endpoint)
        {
            switch (endpoint?.Name)
            {
            case EndpointNames.Policy:
                return(options.EnablePolicyEndpoint);

            case EndpointNames.Permission:
                return(options.EnablePermissionEndpoint);

            default:
                return(true);
            }
        }
Exemple #5
0
        public GitHubService(HttpClient httpClient, IOptions <EndpointsOptions> endpointsOptions, ILogger <GitHubService> logger)
        {
            _logger           = logger;
            _endpointsOptions = endpointsOptions.Value;

            httpClient.BaseAddress = new Uri(endpointsOptions.Value.BaseAddress);
            httpClient.DefaultRequestHeaders.Add("User-Agent", "DojoStub");

            _httpClient = httpClient;

            _logger.LogInformation(_endpointsOptions.BaseAddress);
            _logger.LogInformation(_endpointsOptions.Users);
            _logger.LogInformation(_endpointsOptions.Repos);
        }
Exemple #6
0
 public static bool IsEndpointEnabled(this EndpointsOptions options, Endpoint endpoint)
 {
     return(endpoint?.Name switch
     {
         Constants.EndpointNames.Authorize => options.EnableAuthorizeEndpoint,
         Constants.EndpointNames.CheckSession => options.EnableCheckSessionEndpoint,
         Constants.EndpointNames.DeviceAuthorization => options.EnableDeviceAuthorizationEndpoint,
         Constants.EndpointNames.Discovery => options.EnableDiscoveryEndpoint,
         Constants.EndpointNames.EndSession => options.EnableEndSessionEndpoint,
         Constants.EndpointNames.Introspection => options.EnableIntrospectionEndpoint,
         Constants.EndpointNames.Revocation => options.EnableTokenRevocationEndpoint,
         Constants.EndpointNames.Token => options.EnableTokenEndpoint,
         Constants.EndpointNames.UserInfo => options.EnableUserInfoEndpoint,
         _ => true
     });
Exemple #7
0
        public static bool IsEndpointEnabled(this EndpointsOptions options, Endpoint endpoint)
        {
            switch (endpoint?.Name)
            {
            case EndpointNames.Authorize:
                return(options.EnableAuthorizeEndpoint);

            case EndpointNames.CheckSession:
                return(options.EnableCheckSessionEndpoint);

            case EndpointNames.Discovery:
                return(options.EnableDiscoveryEndpoint);

            case EndpointNames.EndSession:
                return(options.EnableEndSessionEndpoint);

            case EndpointNames.Introspection:
                return(options.EnableIntrospectionEndpoint);

            case EndpointNames.Revocation:
                return(options.EnableTokenRevocationEndpoint);

            case EndpointNames.Token:
                return(options.EnableTokenEndpoint);

            case EndpointNames.UserInfo:
                return(options.EnableUserInfoEndpoint);

            case EndpointNames.Register:
                return(options.EnableRegisterEndpoint);

            case EndpointNames.UpdateUser:
                return(options.EnableUpdateUserEndpoint);

            case EndpointNames.VerifiedEmail:
                return(options.EnableVerifiedEmailEndpoint);

            case EndpointNames.PushOTPEmail:
                return(options.EnablePushOTPEmailEndpoint);

            case EndpointNames.PushSMS:
                return(options.EnablePushSMSEndpoint);

            case EndpointNames.RequestOTP:
                return(options.EnableGenerateOTPEndpoint);

            case EndpointNames.CreateRoles:
                return(options.EnableCreateRolesEndpoint);

            case EndpointNames.UpdateRoles:
                return(options.EnableUpdateRolesEndpoint);

            case EndpointNames.GetListRoles:
                return(options.EnableGetListEndpoint);

            case EndpointNames.GetUserDetail:
                return(options.EnableGetUserDetailEndpoint);

            case EndpointNames.RequestOTPTemp:
                return(options.EnableGenerateOTPTempEndpoint);

            case EndpointNames.DeleteUsers:
                return(options.EnableDeleteUsersEndpoint);

            default:
                // fall thru to true to allow custom endpoints
                return(true);
            }
        }
Exemple #8
0
        public static IServiceCollection AddEndpoints(this IServiceCollection services, EndpointsOptions endpoints)
        {
            var map = new Dictionary <string, Type>();

            if (endpoints.EnableTokenEndpoint)
            {
                map.Add(Constants.ProtocolRoutePaths.Token, typeof(TokenEndpoint));
            }
            if (endpoints.EnableDiscoveryEndpoint)
            {
                map.Add(Constants.ProtocolRoutePaths.DiscoveryConfiguration, typeof(DiscoveryEndpoint));
            }
            if (endpoints.EnableUserInfoEndpoint)
            {
                map.Add(Constants.ProtocolRoutePaths.UserInfo, typeof(UserInfoEndpoint));
            }
            if (endpoints.EnableIntrospectionEndpoint)
            {
                map.Add(Constants.ProtocolRoutePaths.Introspection, typeof(IntrospectionEndpoint));
            }
            if (endpoints.EnableAuthorizeEndpoint)
            {
                map.Add(Constants.ProtocolRoutePaths.Authorize, typeof(AuthorizeEndpoint));
            }
            if (endpoints.EnableEndSessionEndpoint)
            {
                map.Add(Constants.ProtocolRoutePaths.EndSession, typeof(EndSessionEndpoint));
            }
            if (endpoints.EnableCheckSessionEndpoint)
            {
                map.Add(Constants.ProtocolRoutePaths.CheckSession, typeof(CheckSessionEndpoint));
            }

            services.AddSingleton <IEndpointRouter>(new EndpointRouter(map));
            foreach (var item in map)
            {
                services.AddTransient(item.Value);
            }

            return(services);
        }