В приложении n-уровня, независимо от технологии (C#, java ...), вы, вероятно, захотите полностью отключить авторизацию к другой службе, как вы сами указываете. Существует стандарт, который называется XACML (eXtensible Access Markup Language). Это дает
- архитектуры
- языковая политика
- схема запроса/ответа
С XACML, можно применить мелкозернистую разрешение (т.е. разрешение, которая принимает во внимание пользователя , ресурс и дополнительные метаданные контекста) всем слоям вашего приложения: уровень представления (показать/скрыть или включить/отключить виджеты), веб-уровень (для контроля доступа к веб-приложениям, URL-адресам, веб-службам, API-интерфейсам), бизнес-уровня и даже самого уровня базы данных. Я называю это любой архитектурой.
Преимущество XACML в том, что оно не относится к вашей среде .NET. Это означает, что вы можете использовать его в других средах.
Я фактически представил эту тему на прошлой неделе на конференции разработчиков Java. Вы можете проверить мою презентацию на SlideShare.
HTH