Декларативная безопасность .NET: почему с SecurityAction.Deny невозможно работать?

у украсить некоторые Операционные контракты с атрибутом, чтобы авторизовать вызывающего абонента с помощью пользовательской логики, что-то вроде этого:

[ServiceBehavior]
public class Service1
{
    [OperationContract]
    [Authorize] // ?? this should make sure only admins can call this method
    public List<SampleItem> GetCollection()
    {
        return new List<SampleItem>() { new SampleItem("Only Admins see me") };
    }
}

[Авторизация] должна проверить, имеет ли вызывающий абонент право вызывать эту операцию; если нет - он должен вернуть ошибку ошибки.

Благодарю.

Ответы на вопрос(3)

но вы можете использовать PrincipalPermissionAttribute - общий подход для декларативной безопасности на основе ролей в .NET.

Решение Вопроса

интересную статью оДекларативная безопасность WCF который идет в том же направлении.

Juval определил несколько ключевых сценариев безопасности и включил каждый из них в поведение службы WCF, которое будет применяться в качестве атрибута в вашем классе обслуживания на стороне сервера. Довольно интересное чтение действительно!

 bob esponja23 дек. 2016 г., 09:56
Я не мог прочитать содержимое с помощью справки Windows 10 HTML. Решите это, выполнив следующие действия: «[...] В большинстве версий Windows вы должны сначала сохранить эти файлы на локальном компьютере, а затем разблокировать файл, чтобы прочитать его. Чтобы разблокировать файл, щелкните его правой кнопкой мыши, и выберите свойства, а затем нажмите кнопку «разблокировать». Содержимое будет доступно для чтения ». -Выпуски журнала MSDN
 Maxim Zaslavsky10 янв. 2011 г., 01:01
Это не только хороший ответ, но вы настолько близки к 100К, что заслуживаете повышения. Раскачать!
 Dmitry Sadakov10 янв. 2011 г., 05:44
«В этой колонке я представляю свои декларативные рамки безопасности». - отлично читаю.
 hidden16 окт. 2015 г., 00:52
В сумме за ваши вопросы статья в основном хочет, чтобы вы использовали: [PrincipalPermission (SecurityAction.Demand, Role = @ "WindowsRole или CustomRoleName")] Дополнительно:msdn.microsoft.com/en-us/library/ff647503.aspx

ификации и авторизации по умолчанию, и я использую некоторую пользовательскую обработкуPrincipalPermissionAttribute чтобы проверить мои пользовательские разрешения безопасности.

У меня есть некоторые фрагменты кода того, как я это сделал в этом посте:Декларативная безопасность .NET: почему с SecurityAction.Deny невозможно работать?

Ваш ответ на вопрос