Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Azure active directory MS Graph API:将keyCredentials和requireResourceAccess分配给应用程序_Azure Active Directory_Microsoft Graph Api - Fatal编程技术网

Azure active directory MS Graph API:将keyCredentials和requireResourceAccess分配给应用程序

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 基于此,似乎有一种创建和更新这些值的方法,但根本不知道 有人能给你一个解

我想在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"
问题。@sangheestyle
keyId
是一个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
您提到的是powershell
New AzureadApplication KeyCredential的属性,它表示您要为其创建KeyCredential的ad应用程序,而不是
keyId
,您可以参考链接中的示例1:它起作用了。谢谢。我最头疼的一件事是“keyCredentials”:[{“keyId”:“someValue”,部分。据我所知,KeyCredentials的keyId是当前应用程序的对象id,即UUID。当我尝试它时,graph API返回
,当存在时,应用程序密钥标识符不能为空,最多可以为32字节。\r\n参数名称:applicationKeyIdentifierValue"
问题。@sangheestyle
keyId
是一个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
您提到的是powershell
New AzureadApplication KeyCredential的属性,它表示要为其创建KeyCredential的ad应用程序,而不是
keyId
,您可以参考链接中的示例1: