Security 如何保护管理员帐户
我正在从事一个项目,其管理员可以访问表单的所有控件,但其他人不能。我怎样才能实现这一点 一个想法是,当用户想使用管理员登录时,在登录之前,软件必须检查互联网服务是否可用,如果互联网服务可用,则发送必须从谷歌服务器选择的时间,并发送登录信息。所以管理员必须提醒有人使用您的帐户登录Security 如何保护管理员帐户,security,Security,我正在从事一个项目,其管理员可以访问表单的所有控件,但其他人不能。我怎样才能实现这一点 一个想法是,当用户想使用管理员登录时,在登录之前,软件必须检查互联网服务是否可用,如果互联网服务可用,则发送必须从谷歌服务器选择的时间,并发送登录信息。所以管理员必须提醒有人使用您的帐户登录 但是如果互联网服务不可用,则将该信息保存在一个文本文件中,该文件必须放在系统中,当服务可用时,管理员只需获取该日志文件,并询问使用管理员登录的用户?我认为,如果您在应用程序中使用日志,并将其配置为在打开页面时执行任何您想
但是如果互联网服务不可用,则将该信息保存在一个文本文件中,该文件必须放在系统中,当服务可用时,管理员只需获取该日志文件,并询问使用管理员登录的用户?我认为,如果您在应用程序中使用日志,并将其配置为在打开页面时执行任何您想执行的操作,效果会更好使用敏感信息进行访问。你可以使用,或者。这样,您可以将信息存储在文本或Xml文件、数据库、发送电子邮件等中
C#
使用log4net的示例
:
private static log4net.ILog oLog = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
[HttpPost]
public ActionResult Login(LoginModel model, string returnUrl)
{
if (ModelState.IsValid)
{
if (Membership.ValidateUser(model.UserName, model.Password))
{
FormsAuthentication.SetAuthCookie(model.UserName, model.RememberMe);
if (Url.IsLocalUrl(returnUrl) && returnUrl.Length > 1 && returnUrl.StartsWith("/")
&& !returnUrl.StartsWith("//") && !returnUrl.StartsWith("/\\"))
{
if (this.User.IsInRole("Administrators"))
{
oLog.Info("Administrator logged in.");
}
return Redirect(returnUrl);
}
else
{
return RedirectToAction("Index", "Home");
}
}
else
{
ModelState.AddModelError("", "The user name or password provided is incorrect.");
}
}
// If we got this far, something failed, redisplay form
return View(model);
}
亲爱的,如果您在vb.net或C#.net中为我提供了一个简单的示例。请参阅我编辑的答案,以及使用log4net库的C#MVC示例。您应该检查我为相应的appender提供的链接,以便在日志配置文件中使用。