WCF - Получить связанный ServiceContract в ServiceAuthorizationManager - PullRequest
0 голосов
/ 08 апреля 2011

Я пытаюсь реализовать пользовательский ServiceAuthorizationManager. В моем ServiceContract у меня есть собственный атрибут для каждого метода под названием «Авторизация», где у меня есть флаг, если авторизация требуется или нет.

Что я хочу сделать, так это из моего ServiceAuthorizationManager получить связанный ServiceContract для текущего запроса, проверить атрибут для поражаемой конечной точки, а затем просто вернуть true, если авторизация не требуется.

Каков наилучший способ получить доступ к этому? Получив его, я легко могу использовать рефлексию для получения информации об авторизации.

Спасибо за помощь.

1 Ответ

2 голосов
/ 08 апреля 2011

Ну, один из способов - получить действие вот так:

string action = operationContext.RequestContext.RequestMessage.Headers.Action;

Действие в формате:

ServiceNamespace/ContractName/OperationName

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

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