Example #1
0
        public static IdentityAdminServiceFactory Configure(string connString)
        {
            var factory = new IdentityAdminServiceFactory();

            factory.IdentityAdminService = new Registration <IIdentityAdminService>(resolver => new IdentityAdminManagerService(connString));
            return(factory);
        }
        public void Configuration(IAppBuilder app)
        {
            LogProvider.SetCurrentLogProvider(new TraceSourceLogProvider());

            app.Map("/admin", adminApp =>
            {
                var factory = new IdentityAdminServiceFactory
                {
                    ClientService           = new Registration <IClientService, InMemoryClientService>(),
                    IdentityResourceService = new Registration <IIdentityResourceService, InMemoryIdentityResourceService>(),
                    ApiResourceService      = new Registration <IApiResourceService, InMemoryApiResourceService>()
                };
                var rand    = new System.Random();
                var clients = ClientSeeder.Get(rand.Next(1000, 3000));

                var identityResources = IdentityResourceSeeder.Get(rand.Next(25));
                var apiResources      = ApiResourceSeeder.Get(rand.Next(54));

                factory.Register(new Registration <ICollection <InMemoryClient> >(clients));
                factory.Register(new Registration <ICollection <InMemoryIdentityResource> >(identityResources));
                factory.Register(new Registration <ICollection <InMemoryApiResource> >(apiResources));

                adminApp.UseIdentityAdmin(new IdentityAdminOptions
                {
                    Factory = factory
                });
            });
        }
        /// <summary>
        /// 
        /// </summary>
        /// <param name="disableSecurity">Warning: If this parameter is set to <value>TRUE</value> ALL security will be switched off, this is only used for Unit testing purpose</param>
        public IdentityAdminOptions(bool disableSecurity = false)
        {
            DisableSecurity = disableSecurity;
            Factory = new IdentityAdminServiceFactory();
            if (!DisableSecurity)
            {
                AdminSecurityConfiguration = new LocalhostSecurityConfiguration();
            }

        }
Example #4
0
 void InitializeConfigAdmin(IAppBuilder app)
 {
     // Clients and Scopes manager
     app.Map("/configadmin", adminApp =>
     {
         var factory = new IdentityAdminServiceFactory();
         factory.Configure();
         adminApp.UseIdentityAdmin(new IdentityAdminOptions
         {
             Factory = factory
         });
     });
 }
Example #5
0
        public void Configuration(IAppBuilder app)
        {
            app.Map("/admin", adminApp =>
            {
                var factory = new IdentityAdminServiceFactory();
                factory.Configure("AspId");

                adminApp.UseIdentityAdmin(new IdentityAdminOptions
                {
                    Factory = factory
                });
            });

            app.Map("/manager", managerApp =>
            {
                var factory = new IdentityManagerServiceFactory();
                factory.ConfigureIdentityManagerService("AspId");

                managerApp.UseIdentityManager(new IdentityManagerOptions
                {
                    Factory = factory
                });
            });

            app.Map("/core", core =>
            {
                var idSvrFactory = IdentityServer.Factory.Configure("AspId");
                idSvrFactory.ConfigureUserService("AspId");

                var options = new IdentityServerOptions
                {
                    SiteName              = "Cabroso Identity Server",
                    SigningCertificate    = IdentityServer.Certificate.Get(),
                    Factory               = idSvrFactory,
                    AuthenticationOptions = new AuthenticationOptions
                    {
                        LoginPageLinks = new List <LoginPageLink>
                        {
                            new LoginPageLink()
                            {
                                Href = "passwordReset",
                                Text = "Reset Your Password",
                                Type = "resetTestType"
                            }
                        }
                    }
                };

                core.UseIdentityServer(options);
            });
        }
        private static IdentityAdminServiceFactory CreateIdentityAdminServiceFactory()
        {
            var factory = new IdentityAdminServiceFactory
            {
                IdentityAdminService = new Registration <IIdentityAdminService, InMemoryIdentityManagerService>()
            };
            var rand    = new System.Random();
            var clients = ClientSeeder.Get(rand.Next(1000, 3000));
            var scopes  = ScopeSeeder.Get(rand.Next(15));

            factory.Register(new Registration <ICollection <InMemoryScope> >(scopes));
            factory.Register(new Registration <ICollection <InMemoryClient> >(clients));
            return(factory);
        }
 public void Init()
 {
     ClientServiceImpl = new FakeClientService();
     Server            = TestServer.Create(adminApp =>
     {
         var factory = new IdentityAdminServiceFactory
         {
             ClientService = new Registration <IClientService>(ClientServiceImpl.Object)
         };
         adminApp.UseIdentityAdmin(new IdentityAdminOptions(true)
         {
             Factory = factory,
         });
     });
     Client = Server.HttpClient;
 }
Example #8
0
 public static void UseIdSrvAdmin(this IAppBuilder app, bool usehttps = false)
 {
     app.Map("/admin", adminApp =>
     {
         var factory = new IdentityAdminServiceFactory
         {
             IdentityAdminService = new IdentityAdmin.Configuration.Registration <IIdentityAdminService, IdentityAdminManagerService>()
         };
         var adminoption = new IdentityAdminOptions()
         {
             Factory = factory,
         };
         adminoption.AdminSecurityConfiguration.RequireSsl = usehttps;
         adminApp.UseIdentityAdmin(adminoption);
     });
 }
        public static IdentityAdminOptions CreateIdentityAdminOptions()
        {
            var factory = new IdentityAdminServiceFactory();

            factory.Configure();
            return new IdentityAdminOptions
            {
                Factory = factory,
                AdminSecurityConfiguration = new AdminHostSecurityConfiguration
                {
                    HostAuthenticationType = "Cookies",
                    AdminRoleName = "IdentityAdminAdministrator",
                    RequireSsl = GlobalConfiguration.RequireSSL ?? true
                }
            };
        }
        public void Configuration(IAppBuilder app)
        {
            Log.Logger = new LoggerConfiguration()
                         .MinimumLevel.Debug()
                         .WriteTo.Trace()
                         .CreateLogger();

            app.Map("/adm", adminApp =>
            {
                var factory = new IdentityAdminServiceFactory();
                factory.Configure();
                adminApp.UseIdentityAdmin(new IdentityAdminOptions
                {
                    Factory = factory
                });
            });
        }
        public void Configuration(IAppBuilder app)
        {
            Log.Logger = new LoggerConfiguration()
               .MinimumLevel.Debug()
               .WriteTo.Trace()
               .CreateLogger();

            app.Map("/adm", adminApp =>
            {
                var factory = new IdentityAdminServiceFactory();
                factory.Configure();
                adminApp.UseIdentityAdmin(new IdentityAdminOptions
                {
                    Factory = factory
                });
            });
        }
Example #12
0
        public void Configuration(IAppBuilder app)
        {
            Log.Logger = new LoggerConfiguration()
                         .MinimumLevel.Debug()
                         .WriteTo.Trace()
                         .CreateLogger();


            app.Map("/admin", adminApp =>
            {
                var factory = new IdentityManagerServiceFactory();
                factory.ConfigureSimpleIdentityManagerService("AspId");

                adminApp.UseIdentityManager(new IdentityManagerOptions()
                {
                    Factory = factory,
                });
            });

            app.Map("/core", core =>
            {
                var idSvrFactory = Factory.Configure();
                idSvrFactory.ConfigureUserService("AspId");

                var options = new IdentityServerOptions
                {
                    SiteName           = "IdentityServer3 - AspNetIdentity",
                    SigningCertificate = Certificate.Get(),
                    Factory            = idSvrFactory,
                    RequireSsl         = false
                };

                core.UseIdentityServer(options);
            });
            app.Map("/adm", adminApp =>
            {
                var factory = new IdentityAdminServiceFactory();
                factory.Configure();
                adminApp.UseIdentityAdmin(new IdentityAdminOptions
                {
                    Factory = factory
                });
            });
        }
Example #13
0
        public IdentityAdminOptions GetAdminOptions()
        {
            var factory = new IdentityAdminServiceFactory
            {
                IdentityAdminService = new Registration <IIdentityAdminService, InMemoryIdentityAdminService>()
            };

            var rand    = new System.Random();
            var clients = ClientSeeder.Get(rand.Next(1000, 3000));
            var scopes  = ScopeSeeder.Get(rand.Next(15));

            factory.Register(new Registration <ICollection <InMemoryScope> >(scopes));
            factory.Register(new Registration <ICollection <InMemoryClient> >(clients));

            return(new IdentityAdminOptions
            {
                Factory = factory
            });
        }
        public IdentityAdminOptions GetAdminOptions()
        {
            var factory = new IdentityAdminServiceFactory
            {
                IdentityAdminService = new Registration<IIdentityAdminService, InMemoryIdentityAdminService>()
            };

            var rand = new System.Random();
            var clients = ClientSeeder.Get(rand.Next(1000, 3000));
            var scopes = ScopeSeeder.Get(rand.Next(15));

            factory.Register(new Registration<ICollection<InMemoryScope>>(scopes));
            factory.Register(new Registration<ICollection<InMemoryClient>>(clients));

            return new IdentityAdminOptions
            {
                Factory = factory
            };
        }
Example #15
0
        public IdentityAdminOptions GetAdminOptions()
        {
            var factory = new IdentityAdminServiceFactory();

            factory.Configure();
            return(new IdentityAdminOptions
            {
                Factory = factory,
                AdminSecurityConfiguration = GetSecurityConfiguration(this.apiOnly),
                DisableUserInterface = this.apiOnly
                                       //AdminSecurityConfiguration = new MySecurityConfiguration()
                                       //{
                                       //    HostAuthenticationType = "Cookies",
                                       //    NameClaimType = "name",
                                       //    RoleClaimType = "role",
                                       //    AdminRoleName = "IdentityAdminManager",
                                       //    SigningCert = Cert.Load(typeof(IOwinBootstrapper).Assembly, "Cert", "idsrv3test.pfx", "idsrv3test")
                                       //}
            });
        }
Example #16
0
        public void Configuration(IAppBuilder app)
        {
            LogProvider.SetCurrentLogProvider(new TraceSourceLogProvider());

            app.Map("/admin", adminApp =>
            {
                var factory = new IdentityAdminServiceFactory
                {
                    IdentityAdminService = new Registration<IIdentityAdminService, InMemoryIdentityManagerService>()
                };
                var rand = new System.Random();
                var clients = ClientSeeder.Get(rand.Next(1000, 3000));
                var scopes = ScopeSeeder.Get(rand.Next(15));
                factory.Register(new Registration<ICollection<InMemoryScope>>(scopes));
                factory.Register(new Registration<ICollection<InMemoryClient>>(clients));
                adminApp.UseIdentityAdmin(new IdentityAdminOptions
                {
                    Factory = factory
                });
            });
        }
Example #17
0
        public void Configuration(IAppBuilder app)
        {
            Log.Logger = new LoggerConfiguration()
                         .MinimumLevel.Debug()                // change with your desired log level
                         .WriteTo.File(@"C:\temp\myPath.txt") // remember to assign proper writing privileges on the file
                         .CreateLogger();

            app.UseCookieAuthentication(new CookieAuthenticationOptions
            {
                AuthenticationType = "Cookies"
            });

            app.Map("/identity", idsrvApp =>
            {
                var options = new IdentityServerOptions
                {
                    SiteName           = "Security Token Server",
                    SigningCertificate = LoadCertificate(),
                    Factory            = IdSrvFactory.Configure("SecurityTokenServiceConfig")
                };

                idsrvApp.UseIdentityServer(options);
            });

            app.Map("/UserManagement", adminApp =>
            {
                adminApp.UseOpenIdConnectAuthentication(new OpenIdConnectAuthenticationOptions
                {
                    Authority    = "https://*****:*****@"https://localhost:44300/UserManagement/",
                    ResponseType = "id_token",
                    SignInAsAuthenticationType = "Cookies",
                    Notifications = new OpenIdConnectAuthenticationNotifications
                    {
                        SecurityTokenValidated = n =>
                        {
                            return(AddClaims(n));
                        }
                    }
                });
                var factory = new IdentityManagerServiceFactory();
                factory.ConfigureIdentityManagerService("SecurityTokenServiceConfig");

                adminApp.UseIdentityManager(new IdentityManagerOptions()
                {
                    Factory = factory,
                    SecurityConfiguration = new HostSecurityConfiguration
                    {
                        HostAuthenticationType = "Cookies",
                        AdminRoleName          = "UserManagementAdmin"
                    }
                });
            });

            app.Map("/Admin", adminApp =>
            {
                adminApp.UseOpenIdConnectAuthentication(new OpenIdConnectAuthenticationOptions
                {
                    Authority    = "https://*****:*****@"https://localhost:44300/Admin/",
                    ResponseType = "id_token",
                    SignInAsAuthenticationType = "Cookies",
                    Notifications = new OpenIdConnectAuthenticationNotifications
                    {
                        SecurityTokenValidated = n =>
                        {
                            return(AddClaims(n));
                        }
                    }
                });
                var factory = new IdentityAdminServiceFactory();
                factory.Configure();
                adminApp.UseIdentityAdmin(new IdentityAdminOptions
                {
                    Factory = factory,
                    AdminSecurityConfiguration = new AdminHostSecurityConfiguration
                    {
                        HostAuthenticationType = "Cookies",
                        AdminRoleName          = "ClientScopeManagementAdmin"
                    }
                });
            });
        }
        public void Configuration(IAppBuilder app)
        {
            var options = new IdentityServerOptions
            {
                SiteName = "IdentityServer3 (RavenDB)",
                SigningCertificate = Certificate.Get(),
                Factory = Factory.Configure(),
                RequireSsl = false
            };

            #region TEST
            app.UseCookieAuthentication(new Microsoft.Owin.Security.Cookies.CookieAuthenticationOptions { AuthenticationType = "Cookies", });

            app.UseOpenIdConnectAuthentication(new Microsoft.Owin.Security.OpenIdConnect.OpenIdConnectAuthenticationOptions
            {
                AuthenticationType = "oidc",
                Authority = "http://localhost:9921/core",
                ClientId = "idAdmin",
                RedirectUri = "http://localhost:9921",
                ResponseType = "id_token",
                UseTokenLifetime = false,
                Scope = "openid idAdmin",
                SignInAsAuthenticationType = "Cookies",
                Notifications = new Microsoft.Owin.Security.OpenIdConnect.OpenIdConnectAuthenticationNotifications
                {
                    SecurityTokenValidated = n =>
                    {
                        n.AuthenticationTicket.Identity.AddClaim(new Claim("id_token", n.ProtocolMessage.IdToken));
                        return Task.FromResult(0);
                    },
                    RedirectToIdentityProvider = async n =>
                    {
                        if (n.ProtocolMessage.RequestType == Microsoft.IdentityModel.Protocols.OpenIdConnectRequestType.LogoutRequest)
                        {
                            var result = await n.OwinContext.Authentication.AuthenticateAsync("Cookies");
                            if (result != null)
                            {
                                var id_token = result.Identity.Claims.GetValue("id_token");
                                if (id_token != null)
                                {
                                    n.ProtocolMessage.IdTokenHint = id_token;
                                    n.ProtocolMessage.PostLogoutRedirectUri = "http://localhost:9921/admin";
                                }
                            }
                        }
                    }
                }
            });
            #endregion

            app.Map(
                "/core",
                coreApp =>
                {
                    coreApp.UseIdentityServer(options);
                });

            var adminFactory = new IdentityAdminServiceFactory
            {
                IdentityAdminService = new IdentityAdmin.Configuration.Registration<IIdentityAdminService>(new IdentityAdminService(Factory.RavenConfig.Store))
            };

            var adminOptions = new IdentityAdminOptions
            {
                Factory = adminFactory,
                AdminSecurityConfiguration = new AdminHostSecurityConfiguration { HostAuthenticationType = "Cookies" }
            };
            adminOptions.AdminSecurityConfiguration.RequireSsl = false;

            app.Map("/admin", adminApp =>
            {
                adminApp.UseIdentityAdmin(adminOptions);
            });
        }
Example #19
0
        public void Configuration(IAppBuilder app, IdentityAdminCoreManager <IdentityClient, int, IdentityScope, int> manager)
        {
            JwtSecurityTokenHandler.InboundClaimTypeMap = new Dictionary <string, string>();
            app.UseCookieAuthentication(new CookieAuthenticationOptions
            {
                AuthenticationType = "Cookies"
            });

            app.UseOpenIdConnectAuthentication(new Microsoft.Owin.Security.OpenIdConnect.OpenIdConnectAuthenticationOptions
            {
                AuthenticationType = "ids",
                Authority          = "https://dannguyen.ddns.net/ids/oauth2",
                ClientId           = "ids_configuration_admin",
#if DEBUG
                RedirectUri = "http://localhost:9000/signin-ids/",
#else
                RedirectUri = "http://dannguyen.ddns.net:9000/signin-ids/",
#endif
                ResponseType               = "id_token",
                UseTokenLifetime           = false,
                Scope                      = "openid idsconfig",
                SignInAsAuthenticationType = "Cookies",
                CallbackPath               = new PathString("/signin-ids"),

                Notifications = new Microsoft.Owin.Security.OpenIdConnect.OpenIdConnectAuthenticationNotifications
                {
                    SecurityTokenValidated = n =>
                    {
                        n.AuthenticationTicket.Identity.AddClaim(new Claim("id_token", n.ProtocolMessage.IdToken));
                        return(Task.FromResult(0));
                    },
                    SecurityTokenReceived = n =>
                    {
                        return(Task.FromResult(0));
                    },
                    RedirectToIdentityProvider = async n =>
                    {
                        if (n.ProtocolMessage.RequestType == Microsoft.IdentityModel.Protocols.OpenIdConnectRequestType.LogoutRequest)
                        {
                            var result = await n.OwinContext.Authentication.AuthenticateAsync("Cookies");
                            if (result != null)
                            {
                                var id_token = result.Identity.Claims.GetValue("id_token");
                                if (id_token != null)
                                {
                                    n.ProtocolMessage.IdTokenHint = id_token;
#if DEBUG
                                    n.ProtocolMessage.PostLogoutRedirectUri = "http://localhost:9000/admin/";
#else
                                    n.ProtocolMessage.PostLogoutRedirectUri = "http://dannguyen.ddns.net:9000/admin/";
#endif
                                }
                            }
                        }
                    }
                }
            });

            app.Map("/admin", adminApp =>
            {
                var factory = new IdentityAdminServiceFactory
                {
                    IdentityAdminService =
                        new Registration <IIdentityAdminService>(s => manager)
                };


                adminApp.UseIdentityAdmin(new IdentityAdminOptions()
                {
                    Factory = factory,
                    AdminSecurityConfiguration = _authenticationType == AuthenticationType.Local
                        ? new LocalhostSecurityConfiguration()
                    {
                        RequireSsl = false
                    }
                        : new AdminHostSecurityConfiguration()
                    {
                        HostAuthenticationType = "Cookies",
                        RequireSsl             = false,
                        AdditionalSignOutType  = "ids"
                    }
                });
            });
        }
 public static IdentityAdminServiceFactory Configure(string connString)
 {
   var factory = new IdentityAdminServiceFactory();
   factory.IdentityAdminService = new Registration<IIdentityAdminService>(resolver => new IdentityAdminManagerService(connString));
   return factory;
 }
Example #21
0
 public static void Configure(this IdentityAdminServiceFactory factory, string connString)
 {
     factory.IdentityAdminService = new Registration <IIdentityAdminService>(resolver => new IdentityAdminManagerService(connString));
 }
Example #22
0
 public static void Configure(this IdentityAdminServiceFactory factory)
 {
     //factory.Register(new Registration<CContext>(resolver => new CContext(connectionString)));
     factory.IdentityAdminService = new Registration <IIdentityAdminService, IdentityAdminManagerService>();
 }
 public static void Configure(this IdentityAdminServiceFactory factory)
 {
     factory.IdentityAdminService = new Registration <IIdentityAdminService, IdentityAdminManagerService>();
 }