SOAP-заголовок с идентификатором конечного клиента - PullRequest
1 голос
/ 21 апреля 2009

Среда - это приложения, основанные на собственных услугах, работающие в среде Windows с WCF.

  • Существует несколько «промежуточных» веб-приложений и веб-служб ASP.NET, которые проверяют подлинность конечного клиента с использованием проверки подлинности Windows и используют роли ASP.NET, чтобы установить для Thread.CurrentPrincipal подходящий RolePrincipal. Каждое из этих приложений работает под собственной учетной записью службы, которая является учетной записью домена, и считается доверенной подсистемой.

  • Некоторые внутренние веб-службы WCF, к которым могут обращаться только эти надежные приложения «среднего уровня». Они используют проверку подлинности Windows для ограничения доступа к учетным записям служб, используемым этими приложениями.

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

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

Мне пришло в голову, что это требование не может быть уникальным, поэтому, прежде чем я изобрел свой собственный заголовок SOAP для этой цели, я подумал, что я хотел бы спросить, существуют ли какие-либо стандарты в этой области, которые я мог бы использовать повторно?

1 Ответ

0 голосов
/ 22 апреля 2009

Похоже, что вы после олицетворения WCF, проверьте MSDN Link или Google, который ищет термин для получения дополнительной информации. Я никогда не использовал это сам, поэтому не могу полностью советовать, но, надеюсь, это то, что вы после. Удачи

Редактировать: Разве WCF OperationContext не переносит идентичность на второй этап? (OperationContext.Current.ServiceSecurityContext.PrimaryIdentity.Name)

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