MDM(而非Intune)无法报告当前正在管理的设备的合规性状态(向Azure AD)

时间:2019-05-22 11:37:20

标签: azure-active-directory azure-ad-graph-api mdm

我已通过验证Azure AD用户成功将设备(Windows 10专业版1803)注册到我们自己的MDM。接下来,我必须告诉Azure AD该设备由我们的MDM管理,这就是问题所在。

我所做的patch与文档https://docs.microsoft.com/en-us/windows/client-management/mdm/azure-active-directory-integration-with-mdm#report-device-compliance-to-azure-ad中的一样

我得到的错误是资源'xyz'不存在或者其查询的参考属性对象之一不存在

到目前为止,我所做的是:

  1. 在Azure AD门户上,我添加了一个MDM OnPremise应用,设置其使用条款URL,发现URL,并生成机密。还将MDM用户范围配置为Some,并选择了我的用户所在的group
  2. 根据要求,我确认已选中“应用程序权限”下的“读取和写入设备”。
  3. 用户进行身份验证(使用Azure AD凭据),接受(MDM的)使用条款,并且一切正常。这是在设备上的“设置=>帐户=>访问工作或学校=> +连接”下完成的。
  4. 在注册过程中,我解析了Bearer Token并提取了设备ID(例如 xyz ),该ID与设备成功管理后在Azure AD门户上的ID相同。
  5. 要报告合规状态,我会做一个这样的补丁

PATCH https://graph.windows.net/mytenant.onmicrosoft.com/devices/xyz?api-version=1.0 HTTP/1.1 Authorization: Bearer eyJ0eXAiO……… Accept: application/json Content-Type: application/json { "isManaged":true, "isCompliant":true }

但是我遇到了上述错误。

我还测试了

等不同的设备ID
  • Windows 10在Settigns => System => About上显示。

  • 或者在注册过程中出现在“请求安全令牌”请求的ContextItem属性DeviceID元素上的那个。

    当注册的MDM应用(使用其凭据,例如appid,secret等)向Azure AD自身进行身份验证时,将从Microsoft图中检索我在以上bearer token上使用的patch。 p>

请帮助我找到此错误的根源,或者给我一些提示以解决此问题。我会很感激。

谢谢。

1 个答案:

答案 0 :(得分:0)

Azure AD中Device对象的@Override public void onBindViewHolder(@NonNull Myholder myholder, int i) { myholder.disableTextChangeListner(); myholder.txtJantriNumber.setText(String.valueOf(i + 1)); myholder.edJantriNumber.setText(mTextList[i]); myholder.addTextChangeListner(); } 通常与对象的MATCH (t:Text) WHERE t.date > datetime('2019-02-18T12:18:57') AND t.date < datetime('2019-02-19T12:18:57') RETURN t.description; 属性混淆。 (后者在Azure AD Graph中称为deviceId,在Microsoft Graph中称为objectId。在两种情况下,objectId都是不同属性。)< / p>

在具有Azure AD图的单个设备对象的GET请求中:

id

deviceId标识的字段不是设备对象的GET https://graph.windows.net/{tenant-id}/devices/{object-id} 属性,而是{object-id}属性。

如果您还没有Device对象的deviceId值,但是要做具有objectId,则可以使用Azure AD Graph或Microsoft Graph进行操作适当的查找。使用Azure AD图:

objectId

对于Microsoft Graph,您将使用:

deviceId