为了账号安全,请及时绑定邮箱和手机立即绑定

Webhook 订阅验证消息中没有 ClientState

Webhook 订阅验证消息中没有 ClientState

C#
缥缈止盈 2021-06-29 13:57:32
我目前正在订阅日历活动:var request = graphClient.Subscriptions.Request();var result = await request.AddAsync(    new Subscription {        ChangeType = "created,updated,deleted",            NotificationUrl = notificationUrl,            Resource = "/users/" + userId + "/" + resource,            ExpirationDateTime = DateTimeOffset.UtcNow.AddMinutes(4230),            ClientState = "my-subscription-identifier"    });可以声明 a ClientState,因此当收到通知时,我可以通过将ClientState与创建订阅请求中发送的状态进行比较来处理它?在我发送订阅请求后,服务器向我发送了一条验证消息。我缺少的是ClientState来自 Microsoft Graph 的验证请求。在更改通知下的文档中,请求的描述如下:POST https://{notificationUrl}?validationToken={TokenDefinedByMicrosoftGraph}ClientState: {Data sent in ClientState value in subscription request (if any)}不幸的是,我无法在验证请求(或任何其他部分)的正文中找到客户端状态。客户状态声明是否正确?如果是,为什么ClientState不在文档中描述的验证请求中(因为出于安全原因它看起来很重要)?
查看完整描述

1 回答

?
慕尼黑5688855

TA贡献1848条经验 获得超2个赞

初始验证的目标是让 Microsoft 验证客户端的通知 URL:它已启动和响应,并且它可以接受通知。

验证旨在无副作用且不披露任何信息。

到目前为止,我们还没有遇到包含 clientState 有用的场景,这就是我们没有将它包含在验证请求中的原因。

如果您有一个案例,在此请求中包含更多信息会很有用(例如,作为更大场景/工作流程的一部分),您能否简要描述一下?

注意:我们将很快更新文档以与 API 行为保持一致。


查看完整回答
反对 回复 2021-07-10
  • 1 回答
  • 0 关注
  • 101 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信