这里的前提想大家了解一下. Dynamics 365 online的产品的session是30分钟 timeout. 如果你logout之后, session还是会储存在服务器端不会release. 这样的bug, dev team竟然不去修复. 我们可以通过这样的bug做一些get 和post 请求.
为了我们方便做post, 以下get 和 post的 demo都是用Tabbed Postman来展示
首先,我们需要下载Chrome extension Tabbed Postman
当我们输入https://xxx.crm5.dynamics.com/api/data/v8.2/systemusers(xxxxx)
我们可以看到以下的信息
我们来尝试改动一下用户的数据用patch.
status已经返回了204, 表示已经成功
让我们来检查一下数据
我们的改动项目有变化!!!
已经确认以下的Web API可以使用
Entity
Table
Web API
Bulk Deletion Operation
BulkDeleteOperationBase
https://***.crm6.dynamics.com/api/data/v8.2/bulkdeleteoperations?$top=10
Email Search Base
EmailSearchBase
https://***.crm6.dynamics.com/api/data/v8.2/emailsearches?$top=10
Plug In Type
PluginTypeBase
https://***.crm6.dynamics.com/api/data/v8.2/plugintypes?$top=10
Ribbon Diff
RibbonDiffBase
https://***.crm6.dynamics.com /data/v8.2/ribbondiffs?$top=10
Form definition
SystemFormBase
https://***.crm6.dynamics.com /api/data/v8.2/systemforms?$top=10
CRM users
SystemFormBase
https://***.crm6.dynamics.com /api/data/v8.2/systemusers?$top=10
User Form
UserFormBase
https://***.crm6.dynamics.com /api/data/v8.2/userforms?$top=10
User private views
UserQueryBase
https://***.crm6.dynamics.com /api/data/v8.2/userqueries?$top=10
Public Views
SavedQueryBase
https://***.crm6.dynamics.com /api/data/v8.2/savedqueries?$top=10
Workflow
WorkflowBase
https://***.crm6.dynamics.com /api/data/v8.2/workflows?$top=10
System job
Async Operation Base
https://***.crm6.dynamics.com /api/data/v8.2/asyncoperations?$select=name,createdon,retrycount,messagename,statuscode,_regardingobjectid_value&$orderby=createdon&$top=5000&$filter=statuscode eq 20
PS:
写在后面的几点.
这个bug对开发人员是带来了一些便利. 简单的操作直接可以用get/petch来做改动.
但是也带来了额外的风险. 当你的电脑暴露在危险环境中, 任何一个可以access你的browser的人都可以改动你CRM当中的数据!
手机扫一扫
移动阅读更方便
你可能感兴趣的文章