Postman中防止生产中破坏性API调用的“最佳实践”是什么

y0u0uwnf  于 2022-11-07  发布在  Postman
关注(0)|答案(3)|浏览(220)

我们有很多“危险的”API调用,我们有很多(超过20个)环境,我们的开发人员一直在环境之间切换。
我想为某些环境中的某些API调用创建一个“您确定吗?”类型的提示。
最初的想法-对于破坏性的API调用,预请求脚本将检查一个环境变量,并提示如果“生产”。但没有“提示”功能在 Postman ,我可以找到。
除了建议我们不允许开发人员在生产环境中使用,还有人能想出一种方法来在提交之前进行提示,或者至少减少错误地向生产环境提交破坏性调用的风险吗?
先谢谢你。

kx7yvsdv

kx7yvsdv1#

如果你真的想用技术解决这个问题,对你的危险端点使用身份验证。不要把证书给你不信任的任何人。如果真的有问题,你可以轮换证书。
或者,如果员工无法处理生产访问,则将其调离岗位。YMMV。

ltqd579y

ltqd579y2#

如果您需要一个技术解决方案来避免意外调用,我已经编写了一个简单的预请求脚本,在我们的生产环境中只允许GET请求(除非您传递了一个特定的头来覆盖锁)。我的目的只是添加某种检查,以确保我们不会在某些环境中意外地进行某些调用。
我们希望避免团队中有人不小心对产品发出POST或其他类型的修改请求的情况。如果你不注意你在postman中选择了什么环境,很容易发生这种情况。发生在我们最好的人身上🤷🏻‍♂️
如果您需要的话,可以很容易地修改脚本以阻止对生产的所有调用:)如果有一个提示符就太棒了,但现在必须这样做。

  • 当前的解决方案是在满足某些条件时抛出错误,从而不执行请求。*

希望这对其他有同样问题的人有帮助:
https://www.fullstackdev.cloud/posts/using-pre-request-scripts-in-postman-to-avoid-dangerous-api-calls

zzlelutf

zzlelutf3#

对于任何在这里绊倒的人来说,到目前为止还没有“提示”函数,它在这个线程https://github.com/postmanlabs/postman-app-support/issues/285上请求。
因此,降低风险的最佳方法是,如果环境变量匹配,则通过引发错误来停止请求本身。
来自https://stackoverflow.com/a/47150325/12295149的示例:

if (!environment['X']) {
    throw new Error('No "X" set')
}

相关问题