public IEnumerable<IUserLogin> GetLogins()
 {
     ILoginManager manager = new IdentityManager(new IdentityStore()).Logins;
     var accounts = manager.GetLogins(User.Identity.GetUserId());
     CanRemoveExternalLogins = accounts.Count() > 1;
     return accounts;
 }
Example #2
0
 public ActionResult DeleteConfirmed(string id)
 {
     var role = _db.Roles.First(r => r.Name == id);
     var idManager = new IdentityManager();
     idManager.DeleteRole(role.Id);
     return RedirectToAction("Index");
 }
Example #3
0
 private void CreateMember(string email,string password,string role,string firstName)
 {
     IdentityManager identity = new IdentityManager();
     var adminUser = identity.GetUser(email);
     if(adminUser == null) {
         string errorResult = string.Empty;
         if(identity.CreateUser(email,password,out errorResult)) {
             adminUser = identity.GetUser(email);
             if(adminUser != null) {
                 identity.AddUserToRole(adminUser.Id,role);
                 using(WVCContext context = new WVCContext()) {
                     var wvcUser = context.wvc_user.FirstOrDefault(q => q.aspnetuser_id == adminUser.Id);
                     if(wvcUser == null) {
                         wvcUser = new wvc_user();
                         wvcUser.aspnetuser_id = adminUser.Id;
                         wvcUser.created_date = DateTime.Now;
                         wvcUser.first_name = firstName;
                         wvcUser.is_active = true;
                         wvcUser.Save();
                     }
                 }
             }
         }
     }
 }
    protected void Page_Load()
    {
        if (!IsPostBack)
        {
            // Determine the sections to render
            ILoginManager manager = new IdentityManager(new IdentityStore()).Logins;
            if (manager.HasLocalLogin(User.Identity.GetUserId()))
            {
                changePasswordHolder.Visible = true;
            }
            else
            {
                setPassword.Visible = true;
                changePasswordHolder.Visible = false;
            }
            CanRemoveExternalLogins = manager.GetLogins(User.Identity.GetUserId()).Count() > 1;

            // Render success message
            var message = Request.QueryString["m"];
            if (message != null)
            {
                // Strip the query string from action
                Form.Action = ResolveUrl("~/Account/Manage");

                SuccessMessage =
                    message == "ChangePwdSuccess" ? "Your password has been changed."
                    : message == "SetPwdSuccess" ? "Your password has been set."
                    : message == "RemoveLoginSuccess" ? "The account was removed."
                    : String.Empty;
                successMessage.Visible = !String.IsNullOrEmpty(SuccessMessage);
            }
        }
    }
 private void RunAggregatePoints(IdentityManager.Credential credential)
 {
     var task = new AnalysisTask(ANALYSIS_URL)
     {
         Token = credential.Token
     };
     task.AnalysisCompleted += (s, e) =>
         {
             if (e.Error != null)
                 MessageBox.Show(string.Format("Aggregate Points failed with error: '{0}'", e.Error.Message));
             else if (e.FeatureSet != null && e.FeatureSet.Features != null && e.FeatureSet.Features.Count > 0)
             {
                 var l = MyMap.Layers["AggregatePointsResultLayer"] as GraphicsLayer;
                 l.Graphics.AddRange(e.FeatureSet.Features);
             }
         };
     var context = MyMap.Extent;
     if (context != null)
         context.SpatialReference = MyMap.SpatialReference;
     task.AggregatePoints(new AggregatePointsParameter()
     {
         PointLayer = new ServiceLayer("http://services.arcgis.com/pmcEyn9tLWCoX7Dm/ArcGIS/rest/services/United_States_Nuclear_Missile_Silos/FeatureServer/0"),
         PolygonLayer = new ServiceLayer("http://sampleserver6.arcgisonline.com/arcgis/rest/services/Census/MapServer/3"),
         Context = context
     });
 }
        public void SetUp()
        {
            MongoFlatMapper.EnableFlatMapping(true);
            MongoDbTestConnectionProvider.ReadModelDb.Drop();

            var mngr = new IdentityManager(new CounterService(MongoDbTestConnectionProvider.ReadModelDb));
            mngr.RegisterIdentitiesFromAssembly(typeof(DocumentDescriptorId).Assembly);

            MongoFlatIdSerializerHelper.Initialize(mngr);

            EventStoreIdentityCustomBsonTypeMapper.Register<DocumentDescriptorId>();
            EventStoreIdentityCustomBsonTypeMapper.Register<DocumentId>();
            StringValueCustomBsonTypeMapper.Register<BlobId>();
            StringValueCustomBsonTypeMapper.Register<DocumentHandle>();
            StringValueCustomBsonTypeMapper.Register<FileHash>();

            _writer = new DocumentWriter(MongoDbTestConnectionProvider.ReadModelDb);
            var _documentDescriptorCollection = new MongoReaderForProjections<DocumentDescriptorReadModel, DocumentDescriptorId>
                (
                new MongoStorageFactory(MongoDbTestConnectionProvider.ReadModelDb, 
                    new RebuildContext(true)));
            var _documentDeletedCollection = new CollectionWrapper<DocumentDeletedReadModel, String>
               (
               new MongoStorageFactory(MongoDbTestConnectionProvider.ReadModelDb,
                   new RebuildContext(true)), null);
            _sut = new DocumentProjection(_writer, _documentDescriptorCollection, _documentDeletedCollection);
        }
        // GET: ShoppingCart
        public ActionResult Index()
        {
            IdentityManager elo = new IdentityManager();

            
            return View("Cart");
        }
Example #8
0
        public ActionResult DeleteConfirmed(int id)
        {
            Group group     = db.Groups.Find(id);
            var   idManager = new IdentityManager();

            idManager.DeleteGroup(id);
            return(RedirectToAction("Index"));
        }
Example #9
0
        public static async Task AddUsersToGroups(ApplicationDbContext context, IdentityManager identityManager)
        {
            var user = await context.Users.FirstAsync(u => u.UserName == _initialUserName);

            var group = await context.Groups.FirstAsync(x => x.Name == "SuperAdmins");

            await identityManager.AddUserToGroup(user.Id, group.Id);
        }
Example #10
0
        public ActionResult DeleteConfirmed(string id)
        {
            ApplicationRole applicationrole = db.ApplicationRoles.Find(id);
            var             idManager       = new IdentityManager();

            idManager.DeleteRole(id);
            return(RedirectToAction("Index"));
        }
        public void SetUp()
        {
            _db.Drop();

            var mngr = new IdentityManager(new CounterService(MongoDbTestConnectionProvider.ReadModelDb));
            mngr.RegisterIdentitiesFromAssembly(typeof(DocumentDescriptorId).Assembly);
            MongoFlatIdSerializerHelper.Initialize(mngr);
        }
Example #12
0
 public StaffController(INotificationHandler <DomainNotification> notifications,
                        IStaffAppService staffAppService,
                        IdentityManager identityManager,
                        IMediatorHandler mediator) : base(notifications, mediator)
 {
     _identityManager = identityManager;
     _staffAppService = staffAppService;
 }
        public static Courier <AppRole> GetUserRole(string userId)
        {
            IdentityManager mgr = new IdentityManager();

            var user = mgr.GetUserById(userId);

            return(mgr.GetUserRole(user.Package));
        }
 public void RegisterMongoConventions(IdentityManager identityManager)
 {
     foreach (var assembly in OnGetSharedAssemblies())
     {
         MongoRegistration.RegisterAssembly(assembly);
         identityManager.RegisterIdentitiesFromAssembly(assembly);
     }
 }
Example #15
0
 public AccountsController(IdentityManager identityManager,
                           CustomerManager customerManager,
                           IMapper mapper)
 {
     _identityManager = identityManager;
     _customerManager = customerManager;
     _mapper          = mapper;
 }
Example #16
0
        public InvestorConfigurationController()
        {
            _productServiceFacade = new ProductServiceFacade();
            _userAccountId        = IdentityManager.GetUserAccountId();

            _extensionDaysLookup     = LookupServiceFacade.Lookup("investorextdays", _userAccountId);
            _extensionPoliciesLookup = LookupServiceFacade.Lookup("investorextpolicies", _userAccountId);
        }
Example #17
0
        public string AddToRole()
        {
            IdentityManager im = new IdentityManager();

            im.AddUserToRoleByUsername("*****@*****.**", "admin");

            return("Przypisanie do roli utworzone");
        }
Example #18
0
        public ActionResult CreateRoles()
        {
            var             rolename = Request["rolename"];
            IdentityManager idm      = new IdentityManager();

            idm.CreateRole(rolename);
            return(RedirectToAction("RoleIndex", "UserRole"));
        }
Example #19
0
 protected void Application_Start()
 {
     AreaRegistration.RegisterAllAreas();
     FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
     RouteConfig.RegisterRoutes(RouteTable.Routes);
     BundleConfig.RegisterBundles(BundleTable.Bundles);
     IdentityManager.init();
 }
Example #20
0
        public IEnumerable <IUserLogin> GetLogins()
        {
            ILoginManager manager  = new IdentityManager(new IdentityStore(new ApplicationDbContext())).Logins;
            var           accounts = manager.GetLogins(User.Identity.GetUserId());

            CanRemoveExternalLogins = accounts.Count() > 1;
            return(accounts);
        }
        public ActionResult DeleteConfirmed(string id)
        {
            var role      = _db.Roles.First(r => r.Name == id);
            var idManager = new IdentityManager();

            idManager.DeleteRole(role.Id);
            return(RedirectToAction("Index"));
        }
        private async Task <CustomerUserResult> CreateCustomerUser(RegisterViewModel model)
        {
            bool success = false;
            var  user    = new ApplicationUser {
                UserName = model.Nick, Email = model.Email
            };
            var result = await UserManager.CreateAsync(user, model.Password);

            if (result.Succeeded)
            {
                var usuario = await _db.Usuarios.FirstOrDefaultAsync(u => u.Nick == model.Nick);

                if (usuario == null)
                {
                    _db.Usuarios.Add(new Usuarios
                    {
                        Contraseña = model.Password,
                        DNI        = model.DNI,
                        Nick       = model.Nick,
                        Nombre     = model.Name,
                        Rol        = "C"
                    });
                    _db.Clientes.Add(new Clientes
                    {
                        Nombre           = model.Name,
                        Apellidos        = model.Surname,
                        DNI_Cliente      = model.DNI,
                        Direccion        = model.Address,
                        Fecha_Nacimiento = model.DateBorn,
                        Poblacion        = model.City,
                        Telefono         = model.Phone,
                        Email            = model.Email,
                        Nick             = model.Nick,
                        Estado           = EstadoCliente.Activo.ToString(),
                        Foto             = "koala.png"
                    });
                    await _db.SaveChangesAsync();
                }

                var manager = new IdentityManager();
                await manager.CreateRoleAsync(KoalaRoles.UserCliente);

                await manager.AddUserToRoleAsync(user.Id, KoalaRoles.UserCliente);

                // For more information on how to enable account confirmation and password reset please visit http://go.microsoft.com/fwlink/?LinkID=320771
                // Send an email with this link
                // string code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id);
                // var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme);
                // await UserManager.SendEmailAsync(user.Id, "Confirm your account", "Please confirm your account by clicking <a href=\"" + callbackUrl + "\">here</a>");

                success = true;
            }
            return(new CustomerUserResult
            {
                Success = success,
                Result = result
            });
        }
Example #23
0
 public AccountController(ApplicationDbContext context, IdentityManager identityManager,
                          UserManager <ApplicationUser> userManager, IEmailSender emailSender, ILogger <AccountController> logger)
 {
     _context         = context;
     _identityManager = identityManager;
     _userManager     = userManager;
     _emailSender     = emailSender;
     _logger          = logger;
 }
Example #24
0
        /// <summary>
        /// 配置
        /// </summary>
        /// <param name="services"></param>
        // This method gets called by the runtime. Use this method to add services to the container.
        public IServiceProvider ConfigureServices(IServiceCollection services)
        {
            #region Swagger
            if (swaggerConfig.Enable)
            {
                //添加Swagger
                services.AddSwaggerGen(options =>
                {
                    //swagger中控制请求的时候发是否需要在url中增加accesstoken
                    options.OperationFilter <AddAuthTokenHeaderParameter>();
                    options.SwaggerDoc("v1", new Info {
                        Title = "PowerKeeper.Api", Version = "v1"
                    });
                    options.IncludeXmlComments(Path.Combine(AppContext.BaseDirectory, "PowerKeeper.Api.xml"));
                });
            }
            #endregion
            //AutoMapper
            services.AddAutoMapperSetup();
            services.AddMvc(opt =>
            {
                opt.UseCentralRoutePrefix(new RouteAttribute("api")
                {
                });
            }).SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
            #region 跨域

            var urls = Configuration["AppConfig:Cores"].Split(',');
            services.AddCors(options =>
                             options.AddPolicy("AllowSameDomain",
                                               builder => builder.WithOrigins(urls).AllowAnyMethod().AllowAnyHeader().AllowAnyOrigin().AllowCredentials())
                             );

            #endregion 跨域、
            //添加NLog日志操作
            services.AddNLog();
            //MediatR
            services.AddMediatR(typeof(Startup));
            services.AddSingleton <Microsoft.AspNetCore.Http.IHttpContextAccessor, Microsoft.AspNetCore.Http.HttpContextAccessor>();
            IServiceProvider serviceProvider = services.AddInfrastructure(
                new NativeInjectorBootStrapper(),
                new CommandHandlerBootStrapper(),
                new EventBootStrapper(),
                new FilterBootStrapper());                                              //注册依赖
            IdentityManager identityManager           = Ioc.Create <IdentityManager>(); // new IdentityManager();
            var             tokenValidationParameters = identityManager.GetTokenValidationParameters();
            services.AddAuthentication(options =>
            {
                options.DefaultAuthenticateScheme = "Jwt";
                options.DefaultChallengeScheme    = "Jwt";
            }).AddJwtBearer("Jwt", options =>
            {
                options.TokenValidationParameters = tokenValidationParameters;
            });

            return(serviceProvider);
        }
Example #25
0
        public static async Task AddRolesToGroup(ApplicationDbContext context, IdentityManager identityManager)
        {
            var group = await context.Groups.FirstAsync(x => x.Name == "SuperAdmins");

            foreach (var name in _superAdminRoleNames.ToList())
            {
                await identityManager.AddRoleToGroup(group.Id, name);
            }
        }
Example #26
0
 public IHttpActionResult Setup()
 {
     IdentityManager identity = new IdentityManager();
     identity.CreateRole("admin");
     identity.CreateRole("member");
     CreateMember("*****@*****.**","123456","admin","admin");
     CreateMember("*****@*****.**","123456","member","member");
     return Ok("Success");
 }
Example #27
0
 public void RemoveLogin(string loginProvider, string providerKey)
 {
     ILoginManager manager = new IdentityManager(new IdentityStore()).Logins;
     var result = manager.RemoveLogin(User.Identity.GetUserId(), loginProvider, providerKey);
     var msg = result.Success
         ? "?m=RemoveLoginSuccess"
         : String.Empty;
     Response.Redirect("~/Account/Manage" + msg);
 }
        //[Authorize(Roles = "Admin")]
        public string AddUserToRole()
        {
            IdentityManager im = new IdentityManager();

            im.AddUserToRoleByUsername("admin", "Admin");


            return "Role przypisane";
        }
Example #29
0
        public string Create()
        {
            IdentityManager im = new IdentityManager();

            im.CreateRole("admin");
            im.CreateRole("user");

            return("OK");
        }
Example #30
0
 protected override void Dispose(bool disposing)
 {
     if (disposing && IdentityManager != null)
     {
         IdentityManager.Dispose();
         IdentityManager = null;
     }
     base.Dispose(disposing);
 }
        public ActionResult UnMod(string id)
        {
            IdentityManager im   = new IdentityManager();
            var             user = db.Users.FirstOrDefault(a => a.Id == id);

            im.UserRoleRemove(user.Id, "Mod");

            return(RedirectToAction("Index"));
        }
Example #32
0
        public string AddToRole()
        {
            IdentityManager im = new IdentityManager();

            im.AddUserToRoleByUsername("*****@*****.**", "admin");
            im.AddUserToRoleByUsername("*****@*****.**", "user");

            return("OK");
        }
Example #33
0
        public void TestInvalidSpecialCaseExpiredTokenTest()
        {
            var handler = new IdentityManager();

            Thread.Sleep(11000);
            var response = handler.GetIdentity <IdentityResponse>(System.Net.Http.HttpMethod.Get);

            PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(HttpStatusCode.Unauthorized), $"Request Identity api unsuccessfully.");
        }
        public string Create()
        {
            IdentityManager im = new IdentityManager();

            im.CreateRole("Employer");
            im.CreateRole("User");

            return("RolesCreated");
        }
Example #35
0
        public ActionResult CreateUserRole()
        {
            var             rolename = Request["rolename"];
            var             userid   = Request["userid"];
            IdentityManager idm      = new IdentityManager();

            idm.AddUserToRole(userid, rolename);
            return(RedirectToActionPermanent("UserRolesIndex", "UserRole", new { userId = userid }));
        }
        public ActionResult Register(RegisterViewModel model)
        {
            Random random = new Random();

            //如果验证码为空,发送验证码邮件
            if (string.IsNullOrEmpty(model.VerificationCode))
            {
                string VC          = (random.Next(111111, 999999)).ToString();
                var    mailService = new Mafly.Mail.Mail();

                //参数:接收者邮箱、内容
                mailService.Send(model.Email, "验证码是:" + VC);
                modelTest = model;
                return(View("VerificationCodeView"));
            }
            else
            {
                //    if (ModelState.IsValid)
                //{
                var person = new Person()
                {
                    FirstName       = modelTest.FullName.Substring(0, 1),
                    LastName        = modelTest.FullName.Substring(1, modelTest.FullName.Length - 1),
                    Name            = modelTest.FullName,
                    CredentialsCode = "",
                    Birthday        = DateTime.Now,
                    Sex             = true,
                    MobileNumber    = "18000010001",
                    Email           = modelTest.Email,
                    TelephoneNumber = "18000010001",
                    Description     = "",
                    CreateDateTime  = DateTime.Now,
                    UpdateTime      = DateTime.Now,
                    InquiryPassword = "******",
                };
                var user = new ApplicationUser()
                {
                    UserName        = modelTest.UserName,
                    FirstName       = modelTest.FullName.Substring(0, 1),
                    LastName        = modelTest.FullName.Substring(1, modelTest.FullName.Length - 1),
                    ChineseFullName = modelTest.FullName,
                    MobileNumber    = "18000010001",
                    Email           = modelTest.Email,
                    Person          = person,
                };

                var idManager = new IdentityManager();
                idManager.CreateUser(user, model.PassWord);
                idManager.AddUserToRole(user.Id, "RegisterUser");

                //return RedirectToAction();
                return(Content("<script>alert('恭喜注册成功');location.href'" + Url.Action("login", "Account") + "</script>"));
                //}
                //用户的保存Person ApplicationUser
                //return View();
            }
        }
Example #37
0
    public string GetInfo()
    {
        string info = "";
        string first; string last;

        IdentityManager.Get().GetName(nameId, out first, out last);
        info += "Clone is a " + sex + " named " + nameId + ": " + first + " " + last + " with seed: " + seed;
        return(info);
    }
        public ActionResult Mod(string id)
        {
            IdentityManager im   = new IdentityManager();
            var             user = db.Users.FirstOrDefault(a => a.Id == id);

            im.AddUserToRoleByUsername(user.UserName, "Mod");

            return(RedirectToAction("Index"));
        }
Example #39
0
 /// <summary>
 /// 获取用户登入信息
 /// </summary>
 /// <returns></returns>
 public ActionResult GetUserLoginInfo()
 {
     identity = IdentityManager.GetIdentFromAll();
     if (identity == null || identity.UserId == null)
     {
         return(DataProcess.Failure("未登入").ToMvcJson());
     }
     return(UserOperateContract.GetUserLoginInfo(identity.UserId).ToMvcJson());
 }
 public void TestFixtureSetUp()
 {
     TestHelper.RegisterSerializerForFlatId <TestId>();
     TestHelper.RegisterSerializerForFlatId <TestFlatId>();
     _db = TestHelper.CreateNew(ConfigurationManager.ConnectionStrings["system"].ConnectionString);
     _db.Drop();
     _identityManager = new IdentityManager(new CounterService(_db));
     _identityManager.RegisterIdentitiesFromAssembly(Assembly.GetExecutingAssembly());
 }
        public void SetUp()
        {
            _db.Drop();

            var mngr = new IdentityManager(new CounterService(MongoDbTestConnectionProvider.ReadModelDb));

            mngr.RegisterIdentitiesFromAssembly(typeof(DocumentDescriptorId).Assembly);
            MongoFlatIdSerializerHelper.Initialize(mngr);
        }
Example #42
0
        public ActionResult Create(UserViewModel userViewModel)
        {
            try
            {
                // TODO: Add insert logic here
                if (ModelState.IsValid)
                {
                    string UniqFileName = DateTime.Now.ToString("yyyymmddMMss") + userViewModel.ImageFile.FileName;
                    User user = new User()
                    {
                        Address = userViewModel.Address,
                        BloodGroup = userViewModel.BloodGroup,
                        CitizenShipNumber = userViewModel.CitizenShipNumber,
                        //CreatedBy = userViewModel.CreatedBy,
                        //CreatedDate = userViewModel.CreatedDate,
                        DateOfBirth = userViewModel.DateOfBirth,
                        Email = userViewModel.Email,
                        ImageFile = UniqFileName,
                        //ModifiedBy = userViewModel.ModifiedBy,
                        //ModifiedDate = userViewModel.ModifiedDate,
                        Nationality = userViewModel.Nationality,
                        Password = userViewModel.Password,
                        PhoneNumber = userViewModel.PhoneNumber,
                        Religion = userViewModel.Religion,
                        Sex = userViewModel.Sex,
                        UserName = userViewModel.UserName,
                        FirstName = userViewModel.FirstName,
                        MiddleName = userViewModel.MiddleName,
                        LastName = userViewModel.LastName,
                        Semester = userViewModel.Semester,
                        Guardian1Name = userViewModel.Guardian1Name,
                        Guardian1PhoneNumber = userViewModel.Guardian1PhoneNumber,
                        Guardian2Name = userViewModel.Guardian2Name,
                        Guardian2PhoneNumber = userViewModel.Guardian2PhoneNumber,
                        //Sex = userViewModel.Sex,
                    };
                    string ImageFilePath = System.IO.Path.Combine(Server.MapPath("~/Uploads/UserImage"), UniqFileName);
                    userViewModel.ImageFile.SaveAs(ImageFilePath);
                    db.Users.Add(user);
                    db.SaveChanges();

                    IdentityManager im = new IdentityManager();
                    ApplicationUser userForLogin = new ApplicationUser() { UserName = user.UserName, };
                    im.CreateUser(userForLogin, user.Password);

                    return RedirectToAction("Index");
                }
                return View(userViewModel);
            }

            catch
            {
                return View();
            }
        }
 // Base Challenge method that dispatches to the UI thread if necessary
 private async Task<IdentityManager.Credential> Challenge(IdentityManager.CredentialRequestInfo cri)
 {
     if (Dispatcher == null)
     {
         return await ChallengeUI(cri);
     }
     else
     {
         return await Dispatcher.Invoke(() => ChallengeUI(cri));
     }
 }
 // GET: /VideoStream/VideoStreamViewer
 public ActionResult StreamViewer(int id)
 {
     var identityManager = new IdentityManager();
     VideoStream videoStream = db.VideoStreams.FirstOrDefault(s => s.VideoStreamId == id);
     if (videoStream != null)
     {
         if (videoStream.IsPublic || identityManager.IsUserInRole(User.Identity.GetUserId(), "Member"))
         {
             return View(videoStream);
         }
     }
     return RedirectToAction("Index");
 }
 public AccountController(
     UserManager<ApplicationUser> userManager,
     SignInManager<ApplicationUser> signInManager,
     IEmailSender emailSender,
     ISmsSender smsSender,
     ApplicationDbContext applicationDbContext)
 {
     _userManager = userManager;
     _signInManager = signInManager;
     _emailSender = emailSender;
     _smsSender = smsSender;
     _applicationDbContext = applicationDbContext;
     _identityManager = new IdentityManager(_userManager); //TODO: Move to DI
 }
        //
        // GET: /RoleUser/
        //[Authorize(Roles = "Admin")]
        public string AddRoles()
        {
            IdentityManager im = new IdentityManager();

            im.CreateRole("Banned");
            im.CreateRole("Admin");
            im.CreateRole("User");
            im.CreateRole("Employee");
            im.CreateRole("Waiting");
            


            return "Role stworzone";
        }
Example #47
0
        public ActionResult Create(AdminViewModel adminViewModel)
        {
            var usertest = User.Identity.Name;
            try
            {
                // TODO: Add insert logic here
                if (ModelState.IsValid)
                {
                    string UniqFileName = DateTime.Now.ToString("yyyymmddMMss") + adminViewModel.LogoFile.FileName;
                    Admin admin = new Admin()
                    {
                        AdminName = adminViewModel.AdminName,
                        Address = adminViewModel.Address,
                        //CreatedBy = adminViewModel.CreatedBy,
                        //CreatedDate = adminViewModel.CreatedDate,
                        Password = adminViewModel.Password,
                        DateOfEstablishment = adminViewModel.DateOfEstablishment,
                        Email = adminViewModel.Email,
                        FaxNumber = adminViewModel.FaxNumber,
                        LogoFile = UniqFileName,
                        //ModifiedDate = adminViewModel.ModifiedDate,
                        //ModifiedBy = adminViewModel.ModifiedBy,
                        OrganizationName = adminViewModel.OrganizationName,
                        PanNo = adminViewModel.PanNo,
                        PhoneNumbers = adminViewModel.PhoneNumbers,
                        POBoxNumber = adminViewModel.POBoxNumber,
                        VatNo = adminViewModel.VatNo,
                        Website = adminViewModel.Website,

                    };
                    string logoFilePath = Path.Combine(Server.MapPath("~/Uploads/AdminLogo"), UniqFileName);
                    adminViewModel.LogoFile.SaveAs(logoFilePath);
                    db.Admins.Add(admin);
                    db.SaveChanges();

                    IdentityManager im = new IdentityManager();
                    ApplicationUser user = new ApplicationUser() { UserName=admin.AdminName, };
                    im.CreateUser(user, admin.Password);
                    return RedirectToAction("Index");
                }

                return View(adminViewModel);

            }
            catch
            {
                return View();
            }
        }
Example #48
0
        public static bool AddUserAndRoles()
        {
            bool success = false;

            var idManager = new IdentityManager();
            var role1 = new ApplicationRole() { Name = "Admin", DisplayName = "系统管理员组", Description = "具备全部权限的用户组", SortCode = "001" };
            success = idManager.CreateRole(role1);
            if (!success == true) return success;

            var role2 = new ApplicationRole() { Name = "CanEdit", DisplayName = "业务数据编辑管理组", Description = "具备编辑一般业务数据权限的用户组", SortCode = "002" };
            success = idManager.CreateRole(role2);
            if (!success == true) return success;

            var role3 = new ApplicationRole() { Name = "User", DisplayName = "内部用户", Description = "内部操作用户组", SortCode = "003" };
            success = idManager.CreateRole(role3);
            if (!success) return success;

            var role4 = new ApplicationRole() { Name = "CustomerUser", DisplayName = "外部用户", Description = "外部操作用户组", SortCode = "004" };
            success = idManager.CreateRole(role4);
            if (!success) return success;

            var newUser = new ApplicationUser()
            {
                UserName = "******",
                FirstName = "李",
                LastName = "东生",
                ChineseFullName = "李东生",
                MobileNumber = "13899998888",
                Email = "*****@*****.**"
            };

            // 这里注意:创建的密码要满足响应的密码规则,否则将无法创建用户。
            success = idManager.CreateUser(newUser, "123@Abc");
            if (!success) return success;

            success = idManager.AddUserToRole(newUser.Id, "Admin");
            if (!success) return success;

            success = idManager.AddUserToRole(newUser.Id, "CanEdit");
            if (!success) return success;

            success = idManager.AddUserToRole(newUser.Id, "User");
            if (!success) return success;

            success = idManager.AddUserToRole(newUser.Id, "CustomerUser");
            if (!success) return success;

            return success;
        }
 public VideoStreamViewModel(VideoStream stream, string userId)
     : this()
 {
     this.Source = stream.Source;
     this.IsLive = stream.IsLive;
     if (stream.IsPublic)
     {
         this.IsPublic = true;
     }
     else
     {
         var identityManager = new IdentityManager();
         this.IsPublic = identityManager.IsUserInRole(userId, "Member");
     }
 }
 private void Challenge(string url,
     Action<IdentityManager.Credential, Exception> callback, IdentityManager.GenerateTokenOptions options)
 {
     SignInDialog.DoSignIn(url, (credential, error) =>
     {
         if (error == null)
         {
             ToolBorder.Visibility = System.Windows.Visibility.Visible;
             LoggedInGrid.Visibility = System.Windows.Visibility.Visible;
             LoggedInUserTextBlock.Text = credential.UserName;
         }
         callback(credential, error);
     }
     , options);
 }
Example #51
0
 protected void ChangePassword_Click(object sender, EventArgs e)
 {
     if (IsValid)
     {
         IPasswordManager manager = new IdentityManager(new IdentityStore()).Passwords;
         IdentityResult result = manager.ChangePassword(User.Identity.GetUserName(), CurrentPassword.Text, NewPassword.Text);
         if (result.Success)
         {
             Response.Redirect("~/Account/Manage?m=ChangePwdSuccess");
         }
         else
         {
             AddErrors(result);
         }
     }
 }
        // Alternative login approach (used by commented out IdentityManager ChallengeMethod registration in the constructor)
        private void GetCredentials(string url, System.Action<IdentityManager.Credential, Exception> callback, IdentityManager.GenerateTokenOptions options)
        {
            // TODO get user / password from a UI displayed to user or from a secure location
            string user = "******";
            string password = "******";

            // When challenged for a token generate a set of credentials based on the specified username and password.
            IdentityManager.Current.GenerateCredentialAsync(
                url,
                user,
                password,
                (credential, ex) =>
                {
                    // Raise the Action to return to the method that triggered the challenge (GetMapAsync).
                    callback(credential, ex);
                }, options);
        }
        public static Task<IdentityManager.Credential> GenerateCredentialTaskAsyncEx(
            this IdentityManager manager, string url, 
            IdentityManager.GenerateTokenOptions generateTokenOptions = null)
        {
            var tcs = new TaskCompletionSource<IdentityManager.Credential>();

            // Authenticate using the passed-in info
            manager.GenerateCredentialAsync(url, (cred, ex) =>
            {
                if (ex != null)
                    tcs.TrySetException(ex);
                else
                    tcs.TrySetResult(cred);
            }, generateTokenOptions);

            return tcs.Task;
        }
Example #54
0
        public JsonResult AddMessage(NewMessageViewModel message)
        {
            if (!string.IsNullOrEmpty(message.MessageBody))
            {
                var context = new EfDbContext();
                var username = User.Identity.IsAuthenticated ? User.Identity.Name : message.Username;

                var newMessage = new Message
                {
                    Username = username,
                    MessageBody = message.MessageBody,
                    PostedDateTime = DateTime.Now,
                    GameId = message.GameId
                };

                var identityManager = new IdentityManager();

                if (User.Identity.IsAuthenticated && !identityManager.IsUserInRole(User.Identity.GetUserId(), "Guest"))
                {
                    if (identityManager.IsUserInRole(User.Identity.GetUserId(), "Member"))
                    {
                        newMessage.Label = "Member";
                    }
                    else if (identityManager.IsUserInRole(User.Identity.GetUserId(), "Admin"))
                    {
                        newMessage.Label = "Admin";
                    }
                }
                else
                {
                    newMessage.Label = "Guest";
                }


                context.Messages.Add(newMessage);
                context.SaveChanges();
                var result = new {message = "Success"};
                return Json(result, JsonRequestBehavior.AllowGet);
            }
            else
            {
                var result = new { message = "Failed" };
                return Json(result, JsonRequestBehavior.AllowGet);
            }
        }
        // Challenge method that checks for service access with known credentials
        //private async Task<IdentityManager.Credential> Challenge_KnownCredentials(IdentityManager.CredentialRequestInfo cri)
        //{
        //    try
        //    {
        //        // Obtain credenitals from a secure source
        //        string username = "******";
        //        string password = (cri.ServiceUri.Contains("USA_secure_user1")) ? "user1" : "pass.word1";

        //        return await IdentityManager.Current.GenerateCredentialAsync(cri.ServiceUri, username, password, cri.GenerateTokenOptions);
        //    }
        //    catch (Exception ex)
        //    {
        //        MessageBox.Show("Acces to " + cri.ServiceUri + " denied. " + ex.Message, "Credential Error");
        //    }

        //    return await Task.FromResult<IdentityManager.Credential>(null);
        //}

        // Challenge method that prompts for username / password
        private async Task<IdentityManager.Credential> ChallengeUI(IdentityManager.CredentialRequestInfo cri)
        {
            try
            {
                string username = "******";
                string password = (cri.ServiceUri.Contains("USA_secure_user1")) ? "user1" : "pass.word1";

                loginPanel.DataContext = new LoginInfo(cri, username, password);
                _loginTCS = new TaskCompletionSource<IdentityManager.Credential>(loginPanel.DataContext);

                loginPanel.Visibility = Visibility.Visible;

                return await _loginTCS.Task;
            }
            finally
            {
                loginPanel.Visibility = Visibility.Collapsed;
            }
        }
Example #56
0
        public ActionResult Create([Bind(Include = 
            "RoleName,Description")]RoleViewModel model)
        {
            string message = "That role name has already been used";
            if (ModelState.IsValid)
            {
                var role = new IdentityRole(model.RoleName);
                var idManager = new IdentityManager();

                if(idManager.RoleExists(model.RoleName))
                {
                    return View(message);
                }
                else
                {
                    idManager.CreateRole(model.RoleName);
                    return RedirectToAction("Index", "Account");
                }
            }
            return View();
        }
        public ActionResult Edit(int? id)
        {
            var identityManager = new IdentityManager();
            if (id != null)
            {
                var viewModel = new EditStreamGroupsViewModel(db.VideoStreams.Find(id));
                
                var userId = User.Identity.GetUserId();
                if (identityManager.IsUserInRole(userId, "Admin"))
                {
                    viewModel.AllGroups = db.Groups.ToList().Select(g => new SelectListItem
                                    {
                                        Text = g.Name,
                                        Value = g.GroupId.ToString()
                                    });
                }
                else
                {
                    viewModel.AllGroups = db.Groups.ToList().Where(g => g.OwnerId == userId).Select(g => new SelectListItem
                                    {
                                        Text = g.Name,
                                        Value = g.GroupId.ToString()
                                    });
                }


                viewModel.Groups = db.Groups.Where(group => group.Streams.Any(stream => stream.VideoStreamId == id)).ToList();
                                
                

                if (viewModel != null)
                {
                    ViewBag.Title = "Edit";
                    return View(viewModel);
                }
            }
            
            return RedirectToActionPermanent("AccessDenied", "Home");
        }
        private void Challenge(string url,
            Action<IdentityManager.Credential, Exception> callback, IdentityManager.GenerateTokenOptions options)
        {
            LoginGrid.Visibility = System.Windows.Visibility.Visible;

            TitleTextBlock.Text = string.Format("Login to access: \n{0}", url);

            if (!challengeAttemptsPerUrl.ContainsKey(url))
                challengeAttemptsPerUrl.Add(url, 0);

            RoutedEventHandler handleClick = null;
            handleClick = (s, e) =>
            {
                IdentityManager.Current.GenerateCredentialAsync(url, UserTextBox.Text, PasswordTextBox.Text,
                (credential, ex) =>
                {
                    challengeAttemptsPerUrl[url]++;
                    if (ex == null || challengeAttemptsPerUrl[url] == 3)
                    {
                        LoginLoadLayerButton.Click -= handleClick;
                        callback(credential, ex);
                        LoggedInUserButton.Content = credential.UserName;
                    }

                }, options);
            };
            LoginLoadLayerButton.Click += handleClick;

            System.Windows.Input.KeyEventHandler handleEnterKeyDown = null;
            handleEnterKeyDown = (s, e) =>
            {
                if (e.Key == System.Windows.Input.Key.Enter)
                {
                    PasswordTextBox.KeyDown -= handleEnterKeyDown;
                    handleClick(null, null);
                }
            };
            PasswordTextBox.KeyDown += handleEnterKeyDown;
        }
        // Challenge method should prompt for portal oauth username / password if necessary
        public static async Task<IdentityManager.Credential> Challenge(IdentityManager.CredentialRequestInfo arg)
        {
            // Register Portal Server if necessary
            var serverInfo = IdentityManager.Current.FindServerInfo(PORTAL_URL);
            if (serverInfo == null)
            {
                serverInfo = new IdentityManager.ServerInfo()
                {
                    ServerUri = PORTAL_URL,
                    TokenAuthenticationType = IdentityManager.TokenAuthenticationType.OAuthAuthorizationCode,
                    OAuthClientInfo = new IdentityManager.OAuthClientInfo()
                    {
                        ClientId = CLIENT_ID,
                        RedirectUri = REDIRECT_URI
                    }
                };

                IdentityManager.Current.RegisterServer(serverInfo);
            }

            // Use portal URL always (we know all layers are owned by arcgis.com)
            return await IdentityManager.Current.GenerateCredentialAsync(PORTAL_URL);
        }
Example #60
0
        public async static void ConfigureRoles()
        {
            var identityManager = new IdentityManager();

            const string superAdminRole = "SuperAdmin";
            const string adminUser = "******";

            var roles = new List<string>() {superAdminRole, "Admin", "Moderator", "Member", "Guest"};

            foreach (var role in roles)
            {
                if (!identityManager.RoleExists(role))
                {
                    identityManager.CreateRole(role);
                }
            }

            if (!await identityManager.UserExistsAsync(adminUser))
            {
                await identityManager.CreateUserAsync(new ApplicationUser()
                {
                    UserName = adminUser
                },
                "jk/2eRb296#{1=m");
            }

            if (!identityManager.IsUserInRole(identityManager.GetUserIdByName(adminUser), superAdminRole))
                await
                    identityManager.AddUserToRoleAsync(await identityManager.GetUserIdByNameAsync(adminUser),
                        superAdminRole);

            if (!identityManager.IsUserInRole(identityManager.GetUserIdByName(adminUser), "Admin"))
                await
                    identityManager.AddUserToRoleAsync(await identityManager.GetUserIdByNameAsync(adminUser),
                        "Admin");
        }