我正在使用Microsoft.Azure.ActiveDirectory.GraphClient(版本2.1.0)为Azure AD用户管理编写应用程序。我可以设置用户的管理员,但不知道如何清除该字段。
不幸的是,GitHub上提供的示例项目也不包含此功能。
答案 0 :(得分:9)
我设法使用下面的代码清除“经理”字段。它没有使用Microsoft.Azure.ActiveDirectory.GraphClient库,但完成了工作。
var token = <get your adal token here>
var httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.Authorization =
new AuthenticationHeaderValue("Bearer", token);
var url = "https://graph.windows.net/<tenant domain>/users/<userid>/$links/manager?api-version=1.6"
var resp = httpClient.DeleteAsync(url).Result;
if (!resp.IsSuccessStatusCode)
{
// log / throw exception etc.
}
答案 1 :(得分:0)
您需要向DELETE
执行https://graph.microsoft.com/v1.0/users/<user_email>/manager/$ref
HTTP请求(请确保替换URL中的<user_email>
。
成功调用将收到204
响应代码和空字符串作为响应正文。
Microsoft Graph API文档当前缺少此方法,但应在以后添加。 (请参阅here)
此外,由于后者已经过时,因此您应该开始使用Microsoft Graph(graph.microsoft.com
)而不是Azure AD Graph(graph.windows.net
)。 (请参见here)
答案 2 :(得分:-2)
//Assign and remove user's manager
// User.Manager = newUser as DirectoryObject;
User.Manager = null;