在新的Azure门户中,我可以创建新的应用程序注册。我发现这个动作包含了我想用Graph API实现的多个步骤。
这是我想用Graph API模拟的门户体验:
这就是我使用Graph API所做的事情:
我错过了什么?我必须在步骤3中发送哪些属性。我还需要做什么?
答案 0 :(得分:2)
您必须在创建服务主体期间指定以下内容:
"tags": [
"WindowsAzureActiveDirectoryIntegratedApp"
]
或者您可以使用它更新现有服务主体。否则你做的是正确的。
所以服务主体创建JSON看起来像:
{
"appId": "0e5836bf-ac8d-4b46-9cbb-5b3e8ebcdd37",
"tags":[
"WindowsAzureActiveDirectoryIntegratedApp"
]
}
或者您可以使用以下命令对服务主体执行PATCH:
{
"tags":[
"WindowsAzureActiveDirectoryIntegratedApp"
]
}
当您添加此标记时,主体在“企业应用程序”列表中显示(实际上是服务主体列表)。条件访问也已启用。
此标记似乎存在于通过任何门户为应用创建的任何和所有服务主体上。
但也有一些没有标记的服务主体,例如Graph API的主体和Azure门户。
关键似乎是这些服务在您的目录中具有一些访问权限,但它们不应该在您的控制之下。标签区分了应该对您可见的主体。即使没有标记,主体也可以看到,但只能通过您创建的应用程序,如我们在此处所见。
有趣的是,像Microsoft Graph API这样的主体有一个appId,但没有appOwnerTenantId。 publisherName也为null。
这主要是猜测,因为我实际上并没有在Microsoft工作,但最重要的是,如果您希望AAD处理主体,就像您通过门户网站为应用程序创建主体一样,您必须指定标签也。