Azure devops 在Azure Marketplace上安全地将Azure功能货币化

Azure devops 在Azure Marketplace上安全地将Azure功能货币化,azure-devops,azure-functions,Azure Devops,Azure Functions,这个问题是关于保护IP,并将代码隐藏在我计划在PAYG模式下部署到Azure Marketplace的Azure函数中 职能: C代码,分布在十几个类文件中,编译为DLL 由BlobTrigger触发 使用zipDeploy通过ARM模板部署 ARM模板: 要求客户输入Blob的连接字符串,以及REST API的URL/凭据 要求客户选择功能应用程序的托管计划(高级计划-EP1/EP2/EP3) 部署所需资源(存储、洞察、应用程序服务计划、功能) 使用zipDeploy部署DLL 启动函数

这个问题是关于保护IP,并将代码隐藏在我计划在PAYG模式下部署到Azure Marketplace的Azure函数中

职能:

  • C代码,分布在十几个类文件中,编译为DLL
  • 由BlobTrigger触发
  • 使用zipDeploy通过ARM模板部署
ARM模板:

  • 要求客户输入Blob的连接字符串,以及REST API的URL/凭据
  • 要求客户选择功能应用程序的托管计划(高级计划-EP1/EP2/EP3)
  • 部署所需资源(存储、洞察、应用程序服务计划、功能)
  • 使用zipDeploy部署DLL
  • 启动函数
问题是:

  • 部署后,客户端可以下载功能资产(作为zip文件) 文件)
  • zip文件可以作为一个新函数托管(使用不同的配置)
  • 市场不会跟踪此新功能(出版商收入损失)
有谁能提出解决办法吗?任何其他工作流、部署模型等


一种可能的解决方案是在源代码中嵌入VM的resourceID,编译它以获得DLL,混淆DLL(避免反编译代码和替换resourceID),创建zip,并将此zip用于zipDeploy。但是我找不到任何方法来自动执行此操作,并将其插入ARM模板。

您不能提供SaaS吗?(某个端点+api密钥,就是这样)谢谢。我没有想到这个选项,但是是的,它会起作用。如果不存在其他解决方案,则将实施它。