私のasp.net Webフォームアプリケーションには、次のフォルダー構造があります。
_AdminUser
_ModeratorUser
_EmployeeUser
Images
js
css
ckeditor
App_Code
errorPages
Default.aspx
News.aspx
Article.aspx
これまでのところ、Web サイトのコンテンツを編集していたユーザーは 1 種類だけでした。以前は単純にユーザーを承認し、承認されたユーザーをフォルダー '_AdminUser' にリダイレクトしていました。
サイトに変更を加えることができます。
以下の web.config のコードは、問題なく動作するのに十分でした。
<authentication mode="Forms">
<forms loginUrl="~/_Login.aspx" timeout="2880"/>
</authentication>
<location path="_adminUser">
<system.web>
<authorization>
<deny users="?"/>
</authorization>
</system.web>
</location>
<location path="ckeditor">
<system.web>
<authorization>
<deny users="?"/>
</authorization>
</system.web>
</location>
私の新しいプロジェクトでは、3 種類のユーザーを作成する必要があります
- 管理者ユーザー(スーパーユーザーであり、別のフォルダー内のすべてのファイルにアクセスできます)
- モデレーター ユーザー (このタイプのユーザーは、このフォルダー内のファイル
_ModeratorUser
とその他の一般的なフォルダーにのみアクセスできますが、_AdminUser
または にはアクセスできません_EmployeeUser
) - 従業員ユーザー (このタイプのユーザーは、このフォルダー内のファイルにのみアクセスできます _EmployeeUser
& other general folder but no access to
_AdminUseror
_EmployeeUser` )
これを実現するために、3 種類のロールを作成Admin
しModerator
ましEmployee
た。新しいユーザーを作成するときに、それを特定の役割に割り当てます。上記のように、各役割が異なるフォルダーにアクセスできるようにします。
しかし、この種のロールベースのアクセス許可を達成できるように web.config ファイルを変更する方法がわかりません。私はそのようなチュートリアルを探していましたが、今のところ運がありません. 私が見た他のチュートリアルは、私の問題に対処していないようです。正しい方向へのポインタをいただければ幸いです。