C# 使用FormsAuthentication
我有一个剃须刀网站,我与WebMatrix完全登录/注册和管理员角色。并且要求管理员能够“作为现有用户登录”,以便能够添加、编辑、取消和/或确认他作为特定用户登录的新订单 我知道这不是最常见的方法,但我已经看到了很多。我目前拥有一个域名转售业务,我的供应商使用这种类型的功能,允许我以用户身份登录他们的帐户等 所以,有人告诉我,在C#中,FormsAuthentication将有助于实现这一点。所以我查了一下: 这让我想问: 什么 而且 “用户名”是指用户注册时创建的电子邮件地址?或者它们是指用户名,即INT 那么,真的有这么简单吗C# 使用FormsAuthentication,c#,.net,asp.net,authentication,razor,C#,.net,Asp.net,Authentication,Razor,我有一个剃须刀网站,我与WebMatrix完全登录/注册和管理员角色。并且要求管理员能够“作为现有用户登录”,以便能够添加、编辑、取消和/或确认他作为特定用户登录的新订单 我知道这不是最常见的方法,但我已经看到了很多。我目前拥有一个域名转售业务,我的供应商使用这种类型的功能,允许我以用户身份登录他们的帐户等 所以,有人告诉我,在C#中,FormsAuthentication将有助于实现这一点。所以我查了一下: 这让我想问: 什么 而且 “用户名”是指用户注册时创建的电子邮件地址?或者它们是指用
@{
if(Roles.IsUserInRole("Administrator"))
{
SetAuthCookie(
"ClientsUserNameHere,
true
);
}
else
{
Response.Redirect("~/Account/SignIn");
}
}
<DOCTYPE! HTML>
<html>
<head></head>
<body>
<p>Hello, Administrator, you are currently Signed In as [insert client name here].</p>
</body>
</html>
@{
if(Roles.IsUserInRole(“管理员”))
{
SetAuthCookie(
“客户Susername在这里,
真的
);
}
其他的
{
响应。重定向(“~/Account/SignIn”);
}
}
您好,管理员,您当前以[在此处插入客户端名称]的身份登录
那么,它真的像这样简单吗
是的,就是这么简单。实际上,要使其生效,您需要重定向,因为页面将使用请求cookie,它仍然指示管理员:
if(Roles.IsUserInRole("Administrator")) {
FormsAuthentication.SetAuthCookie(
"ClientsUserNameHere",
false // <-- set to true only if you want persistent cookies
);
Response.Redirect("~/Home/SomeUserPage");
}
if(Roles.IsUserInRole(“管理员”)){
FormsAuthentication.SetAuthCookie(
“ClientsUserNameHere”,
false//Woot!非常感谢@Darin-非常有用的文章:)