Azure active directory MS Graph API:将keyCredentials和requireResourceAccess分配给应用程序
我想在AzureAD上创建一个应用程序,所以我通过手动创建了它,效果很好。另外,我的朋友创建了一个powershell(而不是core)脚本来做同样的事情,并且它工作正常 但是,我想通过MS Graph API制作一个应用程序,该应用程序更易于在多个平台上使用,并找到了如下文档: 它在图形浏览器上运行良好: 但是,我仍然不知道如何添加keyCredentials(cert)和RequiredResourceAccess 基于此,似乎有一种创建和更新这些值的方法,但根本不知道Azure active directory MS Graph API:将keyCredentials和requireResourceAccess分配给应用程序,azure-active-directory,microsoft-graph-api,Azure Active Directory,Microsoft Graph Api,我想在AzureAD上创建一个应用程序,所以我通过手动创建了它,效果很好。另外,我的朋友创建了一个powershell(而不是core)脚本来做同样的事情,并且它工作正常 但是,我想通过MS Graph API制作一个应用程序,该应用程序更易于在多个平台上使用,并找到了如下文档: 它在图形浏览器上运行良好: 但是,我仍然不知道如何添加keyCredentials(cert)和RequiredResourceAccess 基于此,似乎有一种创建和更新这些值的方法,但根本不知道 有人能给你一个解
有人能给你一个解决这个问题的提示吗?你可以使用这个MS graph api:,你可以在中找到你想要的 重要:Microsoft Graph中
/beta
版本下的API位于预览中,可能会发生更改。不支持在生产应用程序中使用这些API
样本:
请求URL:
PATCH https://graph.microsoft.com/beta/applications/{App Object ID}
请求机构:
{
"keyCredentials": [],
"requiredResourceAccess": [
{
"resourceAppId": "00000002-0000-0000-c000-000000000000",
"resourceAccess": [
{
"id": "311a71cc-e848-46a1-bdf8-97ff7156d8e6",
"type": "Scope"
}
]
},
{
"resourceAppId": "00000003-0000-0000-c000-000000000000",
"resourceAccess": [
{
"id": "863451e7-0667-486c-a5d6-d135439485f0",
"type": "Scope"
}
]
}
]
}
这对我来说很有效
您可以使用此MS graph api:,您可以在中找到所需内容
重要:Microsoft Graph中/beta
版本下的API位于预览中,可能会发生更改。不支持在生产应用程序中使用这些API
样本:
请求URL:
PATCH https://graph.microsoft.com/beta/applications/{App Object ID}
请求机构:
{
"keyCredentials": [],
"requiredResourceAccess": [
{
"resourceAppId": "00000002-0000-0000-c000-000000000000",
"resourceAccess": [
{
"id": "311a71cc-e848-46a1-bdf8-97ff7156d8e6",
"type": "Scope"
}
]
},
{
"resourceAppId": "00000003-0000-0000-c000-000000000000",
"resourceAccess": [
{
"id": "863451e7-0667-486c-a5d6-d135439485f0",
"type": "Scope"
}
]
}
]
}
这对我来说很有效
成功了。非常感谢。我要解决的一件事是“keyCredentials”:[{“keyId”:“someValue”,part。据我所知,keyCredentials的keyId是当前应用程序的对象id,作为UUID。当我尝试它时,graph API返回,当存在时,应用程序密钥标识符不能为空,最多可以为32字节。\r\n参数名称:applicationKeyIdentifierValue"
问题。@sangheestylekeyId
是一个GUID,但我不认为它是广告应用程序的对象id。是的,这是GUID
。很抱歉。:)这就是为什么我认为它是基于AAD Powershell文档的:它说指定Azure Active Directory中应用程序的唯一id。
但是,在MS Graph REST API beta上文档,keyId
是唯一标识符(GUID)对于密钥。
它没有显示任何特殊内容。当我通过Graph API创建应用程序后在azure portal上手动注册凭据时,keyId与应用程序的appId或object id不一样。因此,仍然想知道…@sangheestyle在azure Active Directory中指定了应用程序的唯一id
即ObjectId
您提到的是powershellNew AzureadApplication KeyCredential的属性,它表示您要为其创建KeyCredential的ad应用程序,而不是keyId
,您可以参考链接中的示例1:它起作用了。谢谢。我最头疼的一件事是“keyCredentials”:[{“keyId”:“someValue”,部分。据我所知,KeyCredentials的keyId是当前应用程序的对象id,即UUID。当我尝试它时,graph API返回,当存在时,应用程序密钥标识符不能为空,最多可以为32字节。\r\n参数名称:applicationKeyIdentifierValue"
问题。@sangheestylekeyId
是一个GUID,但我不认为它是广告应用程序的对象id。是的,这是GUID
。很抱歉。:)这就是为什么我认为它是基于AAD Powershell文档的:它说指定Azure Active Directory中应用程序的唯一id。
但是,在MS Graph REST API beta上文档,keyId
是唯一标识符(GUID)对于密钥。
它没有显示任何特殊内容。当我通过Graph API创建应用程序后在azure portal上手动注册凭据时,keyId与应用程序的appId或object id不一样。因此,仍然想知道…@sangheestyle在azure Active Directory中指定了应用程序的唯一id
即ObjectId
您提到的是powershellNew AzureadApplication KeyCredential的属性,它表示要为其创建KeyCredential的ad应用程序,而不是keyId
,您可以参考链接中的示例1: