1

我想向我的应用程序添加身份验证和授权。我不想为此使用 Active Directory。我应该System.IdentityModel.Claims用来做这个吗?使用System.IdentityModel.Claims会更容易实现身份验证和授权吗?为什么/为什么不呢?

4

2 回答 2

1

You might consider looking at the Microsoft Geneva framework for Claims-Based Authentication and authorization. http://www.microsoft.com/geneva

Implementing Claims based security will definitely make things easier on you.

Claims-based security has the following advantages over role-based and access control lists (ACLs):

  • Single programming model, no matter the authentication scheme used
  • Claims flow across services in a SOA environment easier and in a more standards-compliant way
  • More flexible (you may see that a role is really just another type of claim)
  • No need to reauthenticate when crossing process boundaries

Hope this helps.

于 2009-06-02T18:00:06.567 回答
0

那么你想用什么?数据库?您认为基于声明的身份验证会给您带来什么?

如果您想通过多个系统(例如中间层)将身份传递到兼容的后端,而不必弄乱模拟和委托,那么基于声明的身份验证会让生活变得更轻松。它也部分用于联合 - 允许其他人的系统执行身份验证和然后,您可以根据这些系统发送的身份信息授权对您的应用程序的访问。

但是,如果您只想避免使用 AD 而是使用来自数据库的用户名和密码,那么成员资格提供程序是一个更简单的选择,它可以为 WCF 和 ASP.NET 启用基于角色和用户的授权检查。

于 2009-07-12T05:13:25.637 回答