我们正在编写一个要在我们的Intranet上部署的Web应用程序。我们希望实现基于角色的安全性,但不希望从头开始编写。
.NET中是否有内置功能可以执行此操作,或者任何人都可以推荐工具。
答案 0 :(得分:2)
另外,如果您运行它,请考虑切换到针对您的中央目录进行身份验证,例如Active Directory,这样您就不必维护两个单独的用户帐户数据库和密码。使用this example中的成员资格模型可以轻松完成此操作。 AD中的小组将扮演角色,等等。
答案 1 :(得分:1)
是的,只需查看Membership API即可。
Scott Guthrie的这篇博文有几个资源的链接,可以帮助您入门。
答案 2 :(得分:1)
会员提供商运作良好。我从web.config中提供了一个示例:
<membership defaultProvider="CSLAMembershipProvider">
<providers>
<add name="CSLAMembershipProvider"
type="..."
functionalProvider="System.Web.Security.ActiveDirectoryMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a"
enableSearchMethods="true"
connectionProtection="None"
attributeMapPasswordQuestion="..."
attributeMapPasswordAnswer="..."
attributeMapFailedPasswordAnswerCount="..."
attributeMapFailedPasswordAnswerTime="..."
attributeMapFailedPasswordAnswerLockoutTime="..."
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
minRequiredPasswordLength="1"
minRequiredNonalphanumericCharacters="0"
passwordStrengthRegularExpression="(?=.{8,})(?=(.*\d){1,})(?=(.*\W){1,})(?=(.*[a-z)){1,})(?=(.*^[a-z]){1,})"
connectionStringName="..."
/>
</providers>
</membership>