0
  • 共享点 2010
  • 基于表单的身份验证 (FBA)
  • SqlMembershipProvider

有没有办法通过 SP Web 服务基础设施检索 FBA 的“角色用户”数据?

它在检索 SharePoint 组、权限和角色时效果很好,但是如何让 FBA 用户成为 FBA 角色的成员呢?

'GetRoleCollectionFromUser' 方法对基于声明的 ID 表示“未找到用户”,例如“i:0#.f|fbamembershipprovider|fbaadmin3”。还有其他方法吗?

4

1 回答 1

1

我认为您无法通过 SP Web 服务获得它。您必须直接使用角色提供程序接口来查询角色。在 SharePoint 2010 中使用成员资格和角色提供程序也存在一些问题,因为并非所有功能都已在其“代理”成员资格提供程序中实现。我建议查看 FBA Pack 中的代码以获取有关如何执行此操作的示例。Utils.cs 和 UserEdit.aspx.cs 应该有一些很好的例子给你:

http://sharepoint2010fba.codeplex.com/SourceControl/changeset/view/458f208d6152#Visigo.Sharepoint.FormsBasedAuthentication%2fVisigo.Sharepoint.FormsBasedAuthentication%2fCode%2fUtils.cs

http://sharepoint2010fba.codeplex.com/SourceControl/changeset/view/458f208d6152#Visigo.Sharepoint.FormsBasedAuthentication%2fVisigo.Sharepoint.FormsBasedAuthentication%2fLayouts%2fFBA%2fMANAGEMENT%2fUserEdit.aspx.cs

于 2012-10-19T20:34:50.447 回答