2

スクリーンショットをいくつか紹介します。説明が簡単になります。

これは私が持っているものです: http
://www.noelshack.com/2012-23-1339063050-SiteWebV3.png 「root」アカウントを使用すると、ページ全体にアクセスできます。

これが私が欲しいものです: http
://www.noelshack.com/2012-23-1339063050-SiteWebV3LimitedAccess.pngroot ではないユーザーへのアクセスを制限したい。

ページ全体へのアクセスを禁止する方法は知っていますが、(可能であれば)ページの一部をマスクする方法がわかりません。

私はこのページを見ましたが、それは私がやりたいことのために私を助けませんでした。

前もって感謝します。

4

2 に答える 2

2

You can make two WebUserControls and can load them conditionally based on the type of user in the parent Page_Load Event or optionally you can make one WebUserControl and set user specific controls visibility to read-only/visible=false by just exposing a Public Property of that UserControl and set it on the Page_load event based on the UserType.

You can do it something like this also

    <% if (this.UserType== "root") { %>
    Loading user control with root user options
    <CTRL:A runat="server" />
<% } else { %>
    Loading user control with Non root User rights
    <CTRL:A runat="server" />
<% } %>

Hope it helps you in anyway

于 2012-06-07T10:16:58.497 に答える
1

I found an easier ( the easiest ? ) way to do it if someone's interested :

protected void Page_Load(object sender, EventArgs e)
    {
            if (Convert.ToString(User.Identity.Name) == "root")
            {
              //Your code if you're root
            }
            else
            {
             //Your code if you aren't
            }
   }

Of course you can change "Root" by your admin's username, or add many logins like this :

if (Convert.ToString(User.Identity.Name) == "root" || Convert.ToString(User.Identity.Name) == "AnotherLogin" || Convert.ToString(User.Identity.Name) == "Etc")
{
  //Blah blah
}

Hope it helps :)

于 2012-06-07T14:07:00.257 に答える