2011-08-12 9 views
0

が今、彼らはその同じページ上の特定のコンテンツを参照してください。異なるページ、ユーザーがログインしたときに

<asp:LoginView ID="LoginView" runat="server"> 
    <AnonymousTemplate> 
    Please login <br />   
     <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
      ConnectionString="<%$ ConnectionStrings:qcvalues_testConnectionString %>" 
      SelectCommand="SELECT * FROM [batchinfo]"></asp:SqlDataSource> 
    <asp:Login ID="LoginControl" runat="server" /> 


    </AnonymousTemplate> 
    <LoggedInTemplate> you are logged in </LoggedInTemplate> ................ 

私は別のページにResponse.Redirect()を行う場合のはdefault2.aspxを言わせて - どのように私はいることを確認しますユーザーはログインしていない限りdefault2.aspxにアクセスできません。

しかし、私は彼らがログインしているときに、ユーザーが別のページに移動したいと思います。

+0

Response.Redirect()? –

+0

@jjdありがとうございます。私は最後にいくつかの文章を追加しました –

+0

@jjdまた総初心者私はどこにレスポンスを入れましたか? –

答えて

2

LoggedInユーザーが正常にログインしているときにイベントが、解雇した。例えば

protected void Login1_LoggedIn(object sender, EventArgs e) 
{ 
    Response.Redirect("Page.aspx"); 
} 

編集:あなたはweb.configファイルの<configuration>セクションの下に以下のコードを追加した場合、それはunauthenticatedユーザーがあなたのページへのアクセス権を持っていないことを、確認します、あなたのコメントを参照します。

<location path="FolderNameIfAny/Page.aspx"> 
    <system.web> 
     <authorization> 
      <deny users="?"/>    
     </authorization> 
    </system.web> 
</location> 

あなたがそう..

<configuration> 
...................... 
...................... 
<location path="FolderName1"> 
    <system.web> 
     <authorization> 
      <deny users="?"/> 
        <allow roles="role1"/>    
     </authorization> 
    </system.web> 
</location> 

<location path="FolderName2"> 
    <system.web> 
     <authorization> 
      <deny users="?"/> 
        <allow roles="role2,role3IfAny"/>   
     </authorization> 
    </system.web> 
</location> 
    </configuration> 

のようにあなたが特定の役割は、特定のフォルダにアクセスすることを許可することができない、unauthenticatedユーザーからフォルダを保護したい場合。

+0

と答えることができます。ログインしたユーザーだけがwww.mysite.com/page.aspxにアクセスできるようにするにはどうしたらいいですか? –

+0

ありがとう、どうすれば複数のルールに関連付けられている複数のフォルダがありますか?別の言葉role1はfolder1にアクセスし、role2はfolder2にアクセスします –

+0

あなたの2番目のコメントに従ってもう一度私の答えを更新してください。 –

1

あなたのweb.configに承認セクションがあることを確認してください。<deny users="?"/>これは、認証されていないユーザーがサイトにアクセスするのを防ぎます。

フォーム認証には別のページにリダイレクトする方法がありますが、ログインコントロールを使ってどのように行うのかよくわかりません。