나는 어떤 작업을 준비하기 위해 인증과 권한 부여를 가지고 놀고 있습니다. 두 페이지를 만들었습니다 : Login.aspx와 Default.aspx. config 파일에서 나는 양식에 대한 인증을 설정하고 인증되지 않은 사용자의 액세스를 거부했습니다 내가 Login.aspx 내 사용자를 인증하는 몇 가지 간단한 코드를 작성했습니다ASP.NET : 코드의 사용자 인증
다음<authentication mode="Forms">
<forms name="aaa" defaultUrl="~/Login.aspx" />
</authentication>
<authorization>
<deny users="?"/>
</authorization>
:
protected void Page_Load(object sender, EventArgs e)
{
GenericIdentity identity = new GenericIdentity("aga", "bbb");
Context.User = new GenericPrincipal(identity, new String[] { "User" }); ;
Response.Redirect("~/Default.aspx");
}
내가 실행 리디렉션이 수행되지 않습니다. 대신 사용자가 인증되지 않았기 때문에 Login.aspx가 계속 호출됩니다 (Context.User.Identity.IsAuthenticated는 모든로드에서 false 임). 내가 도대체 뭘 잘못하고있는 겁니까?
서버.Response.Redirect 대신이 문제를 해결해야합니다. –
@Chris 현재 요청에 대해서만 - 다음 요청까지 문제가 지연됩니다. –