为什么在addKey/addPassword请求期间,azure ad应用程序中的证书/客户端机密会消失?

为什么在addKey/addPassword请求期间,azure ad应用程序中的证书/客户端机密会消失?,azure,azure-active-directory,microsoft-graph-api,Azure,Azure Active Directory,Microsoft Graph Api,当我尝试使用添加客户端机密时(在收到addPassword的200响应后)立即使用(“键入”:“AsymmetricX509Cert”)添加证书,新的客户端机密将在azure门户中消失(几秒钟内可见)。证书将永久存储。 如果请求以相反的方式进行,新证书也会发生同样的情况。 没有给出错误消息,我从addKey请求中得到一个200,从addPassword请求中得到一个200(和secretText)。 如果在请求之间添加15秒的延迟,则新的客户端密码和新证书都将永久存储,并可在门户中看到。 为什么

当我尝试使用添加客户端机密时(在收到addPassword的
200
响应后)立即使用(“键入”:“AsymmetricX509Cert”)添加证书,新的客户端机密将在azure门户中消失(几秒钟内可见)。证书将永久存储。
如果请求以相反的方式进行,新证书也会发生同样的情况。
没有给出错误消息,我从addKey请求中得到一个
200
,从addPassword请求中得到一个
200
(和secretText)。
如果在请求之间添加15秒的延迟,则新的客户端密码和新证书都将永久存储,并可在门户中看到。

为什么证书和密钥会消失(请求之间没有延迟)?

Hello@user12041174,由于并发写入调用而出现此问题。当两个API调用同时写入同一对象时,它们都返回成功响应,但一个调用将覆盖另一个调用所做的更改。这不是推荐的方法,可以通过在写入后执行读取API调用并检查对象已更新。另一种方法可能是延迟几秒钟拨打电话。感谢您的回答@Nishant MSFTIdentity@Nishant。我上面的描述可能有点不准确。这些电话不是在同一时间完成的。第二个电话是在第一个电话收到200个响应后完成的。我甚至可以添加2秒钟的延迟RTIN从第一次呼叫和第二次呼叫接收到200,结果相同。但我同意,似乎存在某种覆盖问题。感谢您的详细解释。请添加延迟=>5秒,这将有助于防止覆盖…如果没有…另一种策略可以是在进行另一次读取之前进行读取请致电。如果问题仍然存在,请告知我们。