ASP.NET Webアプリケーションプロジェクトには、「Admin」フォルダと「User」フォルダが2つあります。 Adminフォルダの下には "Admin.aspx"ページがあり、Userフォルダの下に "User.aspx"ページがあります。アカウントフォルダの下に「Login.aspx」という別のページがあります。このログインページでは、ツールボックスから組み込みのログインコントロールを使用しました。フィールドに指定されたIDとパスワードに基づいて、対応するWebページを呼び出す必要があります。たとえば、ユーザー名を「admin」、パスワードを「パスワード」(基本的には管理者)と入力すると、Admin.aspxページが読み込まれます。一方、ユーザ名が「mike」、パスワードが「mike123」の場合(基本的には通常のユーザ)の場合、アプリケーションはUser.aspxページを読み込む必要があります。私は "ASP.NET"設定ウィザードを使用して、 "Admin"と "User"フォルダに必要なアクセスルールを作成しました。私の問題は、入力されたIDとパスワードに基づいて対応するaspxページをマッピングすることです。ユーザーIDとパスワードに基づいて、対応するaspページへのアクセスを許可します。
0
A
答えて
0
protected void Login1_LoggedIn(object sender, EventArgs e)
{
String[] users = Roles.GetRolesForUser(Login1.UserName);
if (users.Contains("admin"))
{
Response.Redirect("~/Admin/Admin.aspx");
}
else if (users.Contains("users"))
{
Response.Redirect("~/Secure/User.aspx");
}
}
1
あなたの質問は多少曖昧ですが、標準のSqlMembershipプロバイダとフォーム認証を使用していると仮定しています。
Webサイト管理ツールを使用してログインを管理すると、認証のメカニズムが提供されます。 Webサイト機能へのアクセスを定義するためにユーザーロールを構成して使用することをお勧めします。
ロールに応じて特定のページにリダイレクトするには、次のようになります。 ログインコントロールのLoggedInイベントを処理します。
protected void LoginControl_LoggedIn(object sender, EventArgs e)
{
try
{
if (HttpContext.Current.User.IsInRole("Site Admin"))
{
Response.Redirect("~/Admin/Admin.aspx");
}
else if (HttpContext.Current.User.IsInRole("User"))
{
Response.Redirect("~/User/User.aspx");
}
catch (Exception ex)
{
Debug.WriteLine("Exception in d: " + ex.Message);
throw;
}
}
また、web.configを介してサイトのセキュリティ保護されていないセクションの外部にあるLogin.aspxページにアクセスする必要があります。
<authentication mode="Forms">
<forms name="MyApplication" loginUrl="~/Account/Login.aspx" timeout="60">
</forms>
</authentication>
これは、実装可能ないくつかのソリューションの1つです。あなたがこれを手伝ってくれるようにオンラインで多くのリソースがあります。
関連する問題
- 1. マップされたキーに基づいてアクセスを許可する
- 2. AWS S3 IAMはタグに基づくバケットへのアクセスを許可します
- 3. aa-exec tempユーザーにフォルダへのアクセスを許可します。
- 4. ユーザーにオブジェクトストレージアカウントへのアクセスを許可するAPIサービスとメソッド
- 5. は、ユーザー名に基づいてユーザーを認証しますが、shiro.iniのユーザー役割は許可しません
- 6. web.configに設定されたグループに基づいてWCFへのアクセスを許可します。
- 7. 複数のユーザーへのアクセスを許可
- 8. 参照元ページに基づいてページへのアクセスを制限する
- 9. 制限付きフォルダ内の特定のページへのすべてのユーザーへのアクセスを許可します。
- 10. ウィンドウのユーザー名/パスワードに基づいてユーザーを認証します
- 11. ログインしていないユーザーのアクセス許可をシミュレートします
- 12. パスワードでgitリポジトリへのアクセスを許可する
- 13. 管理者への登録ページへのアクセスを許可する
- 14. CodeigniterはIDに基づいてユーザー名を返します
- 15. ForgotPasswordページへの匿名アクセスを許可するページ
- 16. パスワードを持たないユーザーに許可しますか?
- 17. GRANT動的ユーザーへのアクセス許可SQL
- 18. ユーザーのアクセス許可に基づいてコンテンツを表示/非表示するための最善のアプローチ
- 19. generator-angular-fullstack - 特定のルートの役割に基づいてユーザーのアクセス許可を確認する方法
- 20. ASP MVC IDでは、基準に基づいてアクセスを制限する最良の方法は何ですか?
- 21. XMPPユーザーの韻律に対するパスワードの変更を許可する
- 22. スキーマのユーザーとアクセス許可
- 23. ユーザー、役割、グループにKMSキーへのアクセスを許可する
- 24. laravelのルートパスに基づいた動的なアクセス許可を経由して
- 25. Sharepoint 2010、現在のユーザーに基づいてSPListItemへのアクセスを確認する
- 26. ユーザー位置へのアクセスを許可しないELCImagePickerController
- 27. ユーザー名とパスワードを保存し、ユーザーの更新を許可します。 Python
- 28. 1人のユーザーIDとパスワードを使用してデータベースにアクセス
- 29. Googleのスプレッドシートに対するアクセス許可
- 30. データベースへのユーザーのアクセス許可をテストする方法
お返事ありがとうございますが、私は自分自身がこの質問に投稿した回答でこれをすでに解決しています。 –
私は私の答えを提出した後にそれを見た...私は入力するために長い時間がかかりました! ;-) User.IsInRole( "xxxx")メソッドを使用すると、コードを単純化できます。乾杯。 –