public IEnumerable<IUserLogin> GetLogins() { ILoginManager manager = new IdentityManager(new IdentityStore()).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 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"); }
public ActionResult DeleteConfirmed(int id) { Group group = db.Groups.Find(id); var idManager = new IdentityManager(); idManager.DeleteGroup(id); return(RedirectToAction("Index")); }
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); }
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); }
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); } }
public AccountsController(IdentityManager identityManager, CustomerManager customerManager, IMapper mapper) { _identityManager = identityManager; _customerManager = customerManager; _mapper = mapper; }
public InvestorConfigurationController() { _productServiceFacade = new ProductServiceFacade(); _userAccountId = IdentityManager.GetUserAccountId(); _extensionDaysLookup = LookupServiceFacade.Lookup("investorextdays", _userAccountId); _extensionPoliciesLookup = LookupServiceFacade.Lookup("investorextpolicies", _userAccountId); }
public string AddToRole() { IdentityManager im = new IdentityManager(); im.AddUserToRoleByUsername("*****@*****.**", "admin"); return("Przypisanie do roli utworzone"); }
public ActionResult CreateRoles() { var rolename = Request["rolename"]; IdentityManager idm = new IdentityManager(); idm.CreateRole(rolename); return(RedirectToAction("RoleIndex", "UserRole")); }
protected void Application_Start() { AreaRegistration.RegisterAllAreas(); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); IdentityManager.init(); }
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 }); }
public AccountController(ApplicationDbContext context, IdentityManager identityManager, UserManager <ApplicationUser> userManager, IEmailSender emailSender, ILogger <AccountController> logger) { _context = context; _identityManager = identityManager; _userManager = userManager; _emailSender = emailSender; _logger = logger; }
/// <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); }
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); } }
public IHttpActionResult Setup() { IdentityManager identity = new IdentityManager(); identity.CreateRole("admin"); identity.CreateRole("member"); CreateMember("*****@*****.**","123456","admin","admin"); CreateMember("*****@*****.**","123456","member","member"); return Ok("Success"); }
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"; }
public string Create() { IdentityManager im = new IdentityManager(); im.CreateRole("admin"); im.CreateRole("user"); return("OK"); }
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")); }
public string AddToRole() { IdentityManager im = new IdentityManager(); im.AddUserToRoleByUsername("*****@*****.**", "admin"); im.AddUserToRoleByUsername("*****@*****.**", "user"); return("OK"); }
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"); }
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(); } }
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")); }
/// <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 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"; }
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(); } }
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); }
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; }
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; } }
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); }
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"); }