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); } }
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); } }
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); }
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 });
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); } }
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); }