Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.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
Amazon web services .NET核心-AWS KMS-加密材料问题_Amazon Web Services_Amazon S3_Asp.net Core_Aws Sdk_Aws Kms - Fatal编程技术网

Amazon web services .NET核心-AWS KMS-加密材料问题

Amazon web services .NET核心-AWS KMS-加密材料问题,amazon-web-services,amazon-s3,asp.net-core,aws-sdk,aws-kms,Amazon Web Services,Amazon S3,Asp.net Core,Aws Sdk,Aws Kms,我一直在尝试使用KMS管理器在S3存储桶中加密和存储一些敏感信息。我找到了很多关于如何做到这一点的例子,最重要的是AWS文档中的例子() 不接受字符串,但接受AsymmetricKey或SymmetricKey对象。我绕了一圈 var kmsEncryptionMaterials = new EncryptionMaterials(RSA.Create()) 显然,这将是一个每会话密钥,所以我发现这篇文章基本上详细介绍了如何重用一个密钥这似乎真的过时了(创建于2013年),在我看来,这一点是错

我一直在尝试使用KMS管理器在S3存储桶中加密和存储一些敏感信息。我找到了很多关于如何做到这一点的例子,最重要的是AWS文档中的例子()

不接受字符串,但接受AsymmetricKey或SymmetricKey对象。我绕了一圈

var kmsEncryptionMaterials = new EncryptionMaterials(RSA.Create())
显然,这将是一个每会话密钥,所以我发现这篇文章基本上详细介绍了如何重用一个密钥这似乎真的过时了(创建于2013年),在我看来,这一点是错误的,我最初希望使用KMS作为aws生态系统中所有盒子的实际身份验证/授权提供者,然后访问包含密钥的S3存储桶

我错过什么了吗?为什么AWS示例中有一个字符串

我正在使用AWS SDK.NET Core的最新软件包:

  • AWSSDK.核心-v:3.3.24.4
  • AWSSDK.KeyManagementService-v:3.3.6
  • AWSSDK.S3-v:3.3.20

    • 处理这个问题大约一天后,我意识到问题与Amazon.S3.Encryption dll的多个目标有关

      我发现了一个github项目,该项目的示例正确地针对.NETcore()工作,从中可以清楚地看出问题出在缓存的DLL上

      我还通过csproj中的项目组进行了三次检查,确保它们是正确的

        <ItemGroup>
      <PackageReference Include="AWSSDK.Core" Version="3.3.24.4" />
      <PackageReference Include="AWSSDK.KeyManagementService" Version="3.3.6" />
      <PackageReference Include="AWSSDK.S3" Version="3.3.20" />
      <PackageReference Include="Microsoft.Extensions.Configuration" Version="2.1.1" />
      <PackageReference Include="Microsoft.Extensions.Configuration.FileExtensions" Version="2.1.1" />
      <PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="2.1.1" />
        </ItemGroup>
      
      
      
      希望这能对将来的人有所帮助

      var kmsEncryptionMaterials = new EncryptionMaterials(RSA.Create())
      
        <ItemGroup>
      <PackageReference Include="AWSSDK.Core" Version="3.3.24.4" />
      <PackageReference Include="AWSSDK.KeyManagementService" Version="3.3.6" />
      <PackageReference Include="AWSSDK.S3" Version="3.3.20" />
      <PackageReference Include="Microsoft.Extensions.Configuration" Version="2.1.1" />
      <PackageReference Include="Microsoft.Extensions.Configuration.FileExtensions" Version="2.1.1" />
      <PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="2.1.1" />
        </ItemGroup>