использование нескольких элементов авторизации в web.config - PullRequest
2 голосов
/ 04 февраля 2011

Можно ли использовать несколько элементов авторизации в одном файле web.config, чтобы предоставить дополнительным пользователям доступ к одному файлу?

Например, я хотел бы разрешить пользователю User1 доступ ко всему приложению (включая Page1.aspx).) и доступ User2 только к Page1.aspx:

<system.web>
  <authorization>
    <allow users="DOMAIN\User1" />
    <deny users="*" />
  </authorization>
</system.web>
<location path="~/Page1.aspx">
  <system.web>
    <authorization>
      <allow users="DOMAIN\User2" />
      <deny users="*" />
    </authorization>
  </system.web>
</location>

Ответы [ 2 ]

2 голосов
/ 04 февраля 2011

Я считаю, что вы можете использовать список пользователей, разделенных запятыми, поэтому не нужно использовать несколько элементов авторизации для одного ресурса.

Кроме того, обычно лучше полагаться на роли, а не на конкретных пользователей. Поскольку кажется, что вы используете AD, вы можете использовать группу безопасности или что-то подобное для ролей.

0 голосов
/ 04 февраля 2011

Если вы удалите <deny users="*" /> из раздела авторизации Page1.aspx, вы должны получить то, что хотите.Это позволит User2 использовать только эту страницу, и авторизация User1 для всего будет по-прежнему распространяться и на эту страницу.

Вот довольно хороший учебник по всем вопросам, связанным с авторизацией.

...