Active Directory グループのユーザーを定期的に共有ポイント グループに追加する必要があります。つまり、AD グループのユーザーを共有ポイント グループに同期する必要があります。
このアクションを実行するサービス/ワークフローを検討しています。
この問題で私たちを助けてください
Active Directory グループのユーザーを定期的に共有ポイント グループに追加する必要があります。つまり、AD グループのユーザーを共有ポイント グループに同期する必要があります。
このアクションを実行するサービス/ワークフローを検討しています。
この問題で私たちを助けてください
SPUtility.GetPrincipalsInGroup(MSDN)を使用できるPerhabs
bool reachedMaxCount;
SPWeb web = SPContext.Current.Web;
int limit = 100;
int group = "Domain\\SecurityGroup";
SPPrincipalInfo[] users = SPUtility.GetPrincipalsInGroup(web, group, limit, out reachedMaxCount);
使用方法の良い例があります:https ://stackoverflow.com/a/6153943/655293
私の知る限り、このタスクを実行するすぐに使える Web サービスやワークフローはありません。SPUtility.GetPrincipalsInGroup
@HW90 によって提案された方法は、あなたを間違いなく正しい方向に向けています。
カスタム SharePoint タイマー ジョブ ( SPJobDefinition ) を作成することをお勧めします。SPJobDefinition.Execute メソッドで目的のアクションを実行します。
public override void Execute(Guid targetInstanceId)
{
using (SPSite site = new SPSite("http://server/the/site/collection")
{
using (SPWeb web = site.OpenWeb())
{
int limit = 100;
string group = "Domain\\SecurityGroup";
SPPrincipalInfo[] users = SPUtility.GetPrincipalsInGroup(web, group, limit, out reachedMaxCount);
SPGroup siteGroup = web.SiteGroups["TheGroup"];
// clear the group
for (int i = siteGroup.Users.Count - 1; i >= 0; i--)
{
siteGroup.Users.Remove(i);
}
foreach (SPPrincipalInfo pi in users)
{
siteGroup.AddUser(web.EnsureUser(pi.LoginName));
}
}
}
}