Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在(独立的)Azure函数中运行用户自制的C#代码安全吗?_C#_Azure_.net Core_Plugin Architecture - Fatal编程技术网

在(独立的)Azure函数中运行用户自制的C#代码安全吗?

在(独立的)Azure函数中运行用户自制的C#代码安全吗?,c#,azure,.net-core,plugin-architecture,C#,Azure,.net Core,Plugin Architecture,我正在研究一种插件架构,人们可以自己提交一小段C代码,它将在Azure上每小时执行一次 这是安全的还是可以轻易地破坏您的整个Azure环境? 还有其他解决办法吗 我在考虑使用IronPython——我想在那里创建硬边界比较简单,但实际上我更喜欢使用c 更新 只是想澄清一下:我主要关心的是安全性而不是Azure成本。这将类似于保留实例,或者至少是成本有限的实例 有人上传比特币矿商,我在两天后发现的风险是我可以承受的 我无法生活的是,这个人实际上可以访问所有与Azure相关的东西,如凭据等。它可以访

我正在研究一种插件架构,人们可以自己提交一小段C代码,它将在Azure上每小时执行一次

这是安全的还是可以轻易地破坏您的整个Azure环境? 还有其他解决办法吗

我在考虑使用IronPython——我想在那里创建硬边界比较简单,但实际上我更喜欢使用c

更新

只是想澄清一下:我主要关心的是安全性而不是Azure成本。这将类似于保留实例,或者至少是成本有限的实例

有人上传比特币矿商,我在两天后发现的风险是我可以承受的

我无法生活的是,这个人实际上可以访问所有与Azure相关的东西,如凭据等。

它可以访问您授予Azure函数访问权限的所有内容:它可以读取所有环境变量、连接字符串等。;它可以通过它们访问数据库或密钥库,并了解其他秘密;它可能有一个托管标识,该标识赋予它其他功能;它可能通过防火墙进行访问,否则,由于它位于受信任的Azure IP上,防火墙会阻止它。。。等等

现在,这些东西中的大多数本应被配置禁止,但您将依赖于任何开发人员或devops人员对功能应用程序环境的所有未来更改,以确保他们不会向其公开任何内容

它还可能打击你所依赖的外部服务,并让你受到利率限制的阻碍


一句话:这不是一个好主意。

它不安全。充其量,你将被DDoS攻击,最坏的情况下,你将成为另一个比特币矿商,并获得几千美元的薪水。不过,如果您只为公司的特定人员组打开访问权限,则可以审核他们的操作。请参阅Hi@eocron,这将是一个保留实例,因此成本将是有限的。这是一个非关键的过程,因此上传矿工并在一天后发现并移除+阻止该用户的成本不是问题。我说的更多的是安全。嗨@IanMercer,谢谢你的回答!这与Azure更为相关。
任何其他解决方法?
为每个客户提供他们自己的沙箱。如果他们愿意,他们可以妥协,但如果他们是唯一的一个……另外,我想补充一下这个答案——在这样的系统中发现后门实际上是一项有报酬的工作。所以,stackoverflow可能不是解决安全渗透问题的最佳场所。如果病毒可以通过在致命错误之前重新排列堆栈,在简单系统的根权限下注入,那么是什么阻止它们在云中这样做呢?