这里是我的设想。
我拥有另一个领域的认证网络服务。 现在,我想把用户名称和密码发送给这个外部领域进行认证。 在用户获得认证(Returated true
)时,我希望ASP.net进一步作出这一认证,让用户能够进入并向我提供所有可进入的作为p.net标准公用事业,如目前的用户、被授权者、角色等,供用户使用、认证。 我希望这一点是有意义的。
这里是我的设想。
我拥有另一个领域的认证网络服务。 现在,我想把用户名称和密码发送给这个外部领域进行认证。 在用户获得认证(Returated true
)时,我希望ASP.net进一步作出这一认证,让用户能够进入并向我提供所有可进入的作为p.net标准公用事业,如目前的用户、被授权者、角色等,供用户使用、认证。 我希望这一点是有意义的。
这不是一个问题。 你可以选择多种办法。 一种做法是采用你自己的安全模式来混合形式。
基本想法是让Austh表格为持证用户创建和管理机票(以加密票的形式)。 该机票用于确定某人是否被gged住以及他们是谁。 那么,你就能够把任何额外的安全相关逻辑混为一谈。
为了处理日志的要求,你只有一名控制员,并像你通常那样采取行动。 注:在以下例子中,我就<代码> 缩略语
public ActionResult Login(LoginViewModel model)
{
// make sure the user filled out the login fields correctly
if (!ModelState.IsValid) return View(model);
// authenticate the user here
var authenticatedUser = AuthorizeUserUsingRemoteWebService(model.Username, model.Password);
if (authenticatedUser.IsAuthenticated)
{
// create forms auth ticket cookie and redirect to the home page
FormsAuthentication.SetAuthCookie(authenticatedUser.Username);
return RedirectToAction("Index", "Home");
}
// authentication failed, so show the login page again
return View(model);
}
除此以外,您还可能有一个处理澳大利亚特有重新申请活动的吉大港定居方案单元。 你的模块将在Austh HTTP模块之后登记,因此,该模块将已经处理用户是否贴上标签的问题。 你们想要做的是,如果掌握更多信息、发挥作用和发挥这种作用的话。
public class CustomAuthHttpModule : IHttpModule
{
public void Init(HttpApplication context)
{
context.AuthenticateRequest += new EventHandler(OnAuthenticateRequest);
}
void OnAuthenticateRequest(object sender, EventArgs e)
{
HttpApplication application = (HttpApplication)sender;
HttpContext context = appObject.Context;
// user isn t logged in, so don t do anything else
if (!context.User.Identity.IsAuthenticated) return;
// look up the roles for the specified user, returning the role names as an array of strings
string[] roles = LookupUserRolesFromWebService(context.User.Identity.Name);
// replace the current User principal with a new one that includes the roles we discovered for that user.
context.User = new GenericPrincipal(new GenericIdentity(context.User.Identity.Name), roles);
}
}
You ll register the HTTP module in your web.config:
<httpModules>
<add name="CustomAuthHttpModule"
type="MyAssembly.CustomAuthenticationModule, MyAssembly" />
</httpModules>
您现在可以使用MVC控制器和看法中的用户标语<>AuthenticatedAttribute等。
然而,我建议你研究用户作用的结果,以便你不 ha你的网络服务。 下面请各位发言。
你可以请安全局申请。 设立一个Windows identity Foundation SDK,并在dk名录中找到例子(对我来说,是“C:Program 文件(x86)Windows ID Foundation SDKv4.0SamplesEnd-to-endFederation for Web Apps”。 其中一人(称为“网络应用基金”)申请认证。
In my webpages I have references to js and images as such: "../../Content/Images/"Filename" In my code if I reference a file as above, it doesnt work so i have to write: "c:/miscfiles/"filename" 1-...
I m the only developer in my company, and am getting along well as an autodidact, but I know I m missing out on the education one gets from working with and having code reviewed by more senior devs. ...
Heres the problem, In Masterpage, the google analytics code were pasted before the end of body tag. In ASPX page, I need to generate a script (google addItem tracker) using codebehind ClientScript ...
I m looking for best practices here. Sorry. I know it s subjective, but there are a lot of smart people here, so there ought to be some "very good" ways of doing this. I have a custom object called ...
I am implementing Transaction using TransactionScope with the help this MSDN article http://msdn.microsoft.com/en-us/library/system.transactions.transactionscope.aspx I just want to confirm that is ...
i have the following base controller... public class BaseController : Controller { protected override void Initialize(System.Web.Routing.RequestContext requestContext) { if (...
For what it is necessary Microsoft.Contracts namespace in asp.net? I mean, in what cases I could write using Microsoft.Contracts;?
I d like to add a simple separator line in an aspx web form. Does anyone know how? It sounds easy enough, but still I can t manage to find how to do it.. 10x!