首页 > Web开发 > 详细

authentication and excluding .aspx page by routing MVC

时间:2014-03-26 10:01:36      阅读:522      评论:0      收藏:0      [点我收藏+]

ISSUE:

For example, one page accessed as:

{physicalPath}/popup/Page1.aspx
{projectPath}/popup/Page1.aspx {serverPath}/apsx/external/Page/{id}

Route is registered in Global.asax as:

routes.MapPageRoute("ViewPage","external/Page/{AccessKey}/","~/popup/Page1.aspx",false,newRouteValueDictionary{{ ACCESSKEY,HttpRoutes.RouteParameter.Optional}});
routes.RouteExistingFiles=false;

In Web.config added node:

<locationpath="external"><system.web><authorization><allowusers="?"/><allowusers="*"/></authorization></system.web></location>

Form authentication is configured as:

<authenticationmode="Forms"><formstimeout="120"domain="{host}"cookieless="UseCookies"enableCrossAppRedirects="true"name=".ASPXAUTH"loginUrl="~/Login.aspx"defaultUrl="~/Home/"/></authentication> <authorization><denyusers="?"/><allowusers="*"/></authorization>

When I try to access page using Url:

https://{host}:444/apsx/external/Page/?AccessKey=%3daa3%3ddsa9dsA%2fdwq62%3bwdq5

I get redirected to Login.aspx.

Also tried following:

protectedvoidApplication_BeginRequest(object sender,EventArgs e){HttpContext.Current.Response.AddHeader("x-frame-options","SAMEORIGIN");if(Request.Path=="/apsx/external/Page/"){HttpContext.Current.SkipAuthorization=true;}}

Have not helped :(

SOLUTION:

 If configure Web.config as I described upper, you can specify pattern with virtual path starts from, and apply settings not only to physical files.

For example:

routing:

routes.MapPageRoute("ViewPage","external/Page/{AccessKey}/","~/popup/Page1.aspx",false,newRouteValueDictionary{{ ACCESSKEY,HttpRoutes.RouteParameter.Optional}});

false - the key value, details there.

web config:

<locationpath="external"><system.web><authorization><allowusers="?"/><allowusers="*"/></authorization></system.web></location>

path="external" because my route begins with "external" : 

"external/Page/{AccessKey}/"

authentication and excluding .aspx page by routing MVC,布布扣,bubuko.com

authentication and excluding .aspx page by routing MVC

原文:http://www.cnblogs.com/happy-Chen/p/3622456.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!