我找到了通过Azure AD Grapgh API创建Azure AD应用程序的代码示例。
var application = new Application()
{
AvailableToOtherTenants = false,
DisplayName = appname,
ErrorUrl = null,
GroupMembershipClaims = null,
Homepage = string.Format("http://www.{0}.com", _azureDomain),
IdentifierUris = new List<string>() { { string.Format("https://{0}/{1}",_azureDomain, appname )} },
KeyCredentials = new List<KeyCredential>(),
KnownClientApplications = new List<Guid>(),
LogoutUrl = null,
Oauth2AllowImplicitFlow = false,
Oauth2AllowUrlPathMatching = false,
Oauth2Permissions = new List<OAuth2Permission>();
}
await graphClient.Applications.AddApplicationAsync(application);
但我没有找到只使用全局管理员凭据的graphClient实例化示例,而无需为此目的手动创建其他应用程序。
Here in section 9 there is explanation of how this application has to be created.
这是对的吗?要使用全局管理凭据进行身份验证,需要创建应用程序吗?
如果我错了,这样的身份验证是可能的,有人可以添加代码示例吗?
答案 0 :(得分:1)
这有点像“鸡蛋和鸡蛋”的情景。
除非已经注册了调用应用程序,否则无法访问Graph API。
因此,您需要手动创建包含AAD租户代码的应用程序,并授予其对租户的写入权限。