Аутентификация по формам.Получить разрешенный глагол для роли, указанной в web.config - PullRequest
2 голосов
/ 12 января 2012

Я указал глаголы для ролей в web.config.Это работает нормально, наблюдатель роли перенаправляется на страницу входа, если роль пытается опубликовать страницу Test.aspx.Пример:

  <location path="Test1.aspx">
    <system.web>
      <authorization>
        <allow roles="Administrator" />
        <allow roles="Observer" verbs="GET" />
        <deny users="*"/>
      </authorization>
    </system.web>
  </location>

  <location path="Test2.aspx">
    <system.web>
      <authorization>
        <allow roles="Administrator" />
        <allow roles="Observer" />
        <deny users="*"/>
      </authorization>
    </system.web>
  </location>

Но это немного сбивает с толку пользователя при попытке выполнить POST на странице Test.aspx.Я хочу проинформировать пользователя о том, что ему / ей запрещено публиковать сообщения перед тем, как что-либо щелкнуть.Примерно так:

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    If *Not User.Role("Observer").Verbs("Post").Allowed* then
       uiSave.enabled = false
    End if
End Sub

Итак, вопрос: где я могу получить эту информацию?

1 Ответ

0 голосов
/ 12 января 2012

Использование:

if(User.IsInRole("Observer")){
 //code here
}

Пример здесь

Вам не нужно проверять глагол, потому что вы уже знаете, что пользователи в роли наблюдателя не разрешают использовать глагол Post

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...