为组重复创建请求:Azure AD SCIM 预配

问题描述

我们为连接到 Azure AD 的 SCIM 客户端的自定义应用程序创建了一个 SCIM 端点。我们为自定义应用程序创建了一个企业应用程序并成功连接了配置。我们正在成功创建用户和群组。

我们在日志中看到的是,在成功创建组并将用户成功添加到组后,Azure AD 将发送额外的 CREATE 请求以再次创建组。由于该组已在我们的自定义应用程序中创建,此额外的创建请求将从我们的自定义应用程序返回一个 http409,从而导致 Azure AD 的配置日志中出现“失败”日志条目。

自从第一个 CREATE 请求成功执行后,我们很难理解为什么 Azure AD 会发送两个 CREATE 请求。 在 Azure AD 的配置日志(导出为 JSON)中,我们看到两个 CREATE 请求中的“targetIdentity > identityType”不同。第一个有 "identityType": "urn:ietf:params:scim:schemas:core:2.0:Group" 而最后一个有 "identityType": "Group"。

以前有没有人见过这个问题,或者有人知道是什么导致了这个问题?

解决方法

关闭此循环,因为它也在 Microsoft 问答论坛上被询问(并深入研究) - 这里的问题是第一次 POST 后返回的 ID 值是 X,但是当 AAD Provisioning 后来去读取该对象时对 Users/X 的 GET,它返回零结果,因为最初返回的值是 X,但实际存储在 SCIM 应用程序中的值是 Y。