【问题标题】:Azure function RSA decrypt code not workingAzure 函数 RSA 解密代码不起作用
【发布时间】:2022-03-05 00:20:26
【问题描述】:

我正在尝试使用私钥解密 azure 函数中的刺痛。该代码在我的本地 PC 上运行良好,但是当我尝试通过部署的 azure 函数执行代码时,它会抛出错误 500。 我是天蓝色的新手,因此寻求一些好的建议。在禁用代码中的几个方法后,我发现了实际上破坏代码的方法。下面是注释函数给出 200 响应但不是实际输出时的代码部分,因为此代码正在解密密钥。

        using (var rsa = RSAWrapper.Create())
        {
            rsa.ImportPkcs8PrivateKey(Convert.FromBase64String(privkey), out _); // passing the private key here 
            byte[] data = Convert.FromBase64String(input);
            byte[] bytesEncrypted = rsa.Decrypt(data, RSAEncryptionPadding.Pkcs1);
            output = Convert.ToBase64String(bytesEncrypted);
        }
        return output;
    }

【问题讨论】:

  • 有什么异常?
  • 内部服务器错误 500 是我只能识别的
  • 您应该很高兴看到使用日志流的异常。 docs.microsoft.com/en-us/azure/azure-functions/streaming-logs
  • 系统找不到错误中指定的文件。我目前在 azure function 的字符串中传递硬编码的私钥。在本地是工作,但不是通过 aure 功能。 azure 函数是否有任何安全设置来消耗私钥?
  • 您是否浏览过这个SO 我们有相关讨论的地方? RSA Crypto 服务提供商出现大约 500 个内部错误

标签: azure azure-functions rsa .net-core-3.1 encryption-asymmetric


【解决方案1】:

如果有帮助,请检查以下步骤:

我目前在 azure function 中传递硬编码在字符串中的私钥。在本地是工作,但不是通过 Azure 功能。 azure 功能是否有任何安全设置来消耗私钥?

AFAIK,您可以使用 Azure Key Vault 来保护 RSA 私钥,而不是在 Azure Functions 项目中进行硬编码。

我们知道,Azure Key Vault 是我们可以存储/导入/维护云应用程序必不可少的密钥和机密的地方,我们无法直接访问它。

这是一篇文章,您可以找到retrieves Azure Key Vault Secrets using Azure Functions and Managed Service Identity 的实用解决方法。

以下是一些参考资料,可帮助您记录在 Azure 密钥保管库中存储 RSA 私钥/证书的问题及其解决方法讨论:

  1. Is it possible to put RSA Private Keys in Azure Key Vault Certificates?
  2. https://github.com/MicrosoftDocs/azure-docs/issues/50164

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-22
    相关资源
    最近更新 更多