AWS.EncryptionSDK 3.1.0
前缀已保留
dotnet add package AWS.EncryptionSDK --version 3.1.0
NuGet\Install-Package AWS.EncryptionSDK -Version 3.1.0
<PackageReference Include="AWS.EncryptionSDK" Version="3.1.0" />
paket add AWS.EncryptionSDK --version 3.1.0
#r "nuget: AWS.EncryptionSDK, 3.1.0"
// Install AWS.EncryptionSDK as a Cake Addin #addin nuget:?package=AWS.EncryptionSDK&version=3.1.0 // Install AWS.EncryptionSDK as a Cake Tool #tool nuget:?package=AWS.EncryptionSDK&version=3.1.0
AWS 网络加密 SDK for .NET
AWS 网络加密 SDK for .NET
使用 AWS 网络加密 SDK for .NET
AWS 网络加密 SDK 可在 NuGet 上找到,并通过典型方式从现有的 .csproj
引用。
使用 dotnet CLI
dotnet add <your-project-name>.csproj package AWS.EncryptionSDK
或者,您可以直接修改 .csproj
并将 AWS 网络加密 SDK 添加到 PackageReference
ItemGroup
。
<PackageReference Include="AWS.EncryptionSDK" />
AWS 网络加密 SDK 针对所有平台的 .NET/.NET Core 3.1 及以上版本,以及仅在 Windows 上的 .NET Framework 4.5.2 及以上版本。
仅适用于 macOS 的额外设置
如果您正在使用macOS,则必须安装OpenSSL 1.1版本,运行时OpenSSL 1.1的lib
目录必须在动态链接器路径上。此外,如果您使用基于M1的Mac,您必须安装OpenSSL和x86-64的.NET SDK。有关详细说明,请参阅维基百科。
构建AWS加密SDK for .NET
为了构建,AWS加密SDK需要PATH上最新的Dafny版本。
AWS加密SDK针对框架netstandard2.1
和net452
。测试和测试向量针对框架netcoreapp3.1
和net452
。在任何情况下,net452
和更新的.NET框架版本仅支持Windows。要构建和测试AWS加密SDK,您必须安装以下.NET工具
- .NET Core 3.1或更新
- .NET Framework 4.5.2或更新(如果使用Windows)
您还必须确保使用git clone --recursive ...
在克隆存储库或使用现有克隆时的git submodule update --init
来获取所有子模块。
将所有源文件构建到一个dll中
dotnet build
(可选) 设置AWS加密SDK以与AWS KMS一起使用
如果您将AWS加密SDK设置为由AWS KMS密钥环使用,则AWS加密SDK将代表您调用AWS KMS,使用适当的AWS SDK。
但是,您必须首先设置AWS凭证以与AWS SDK一起使用。有关设置AWS凭证的说明,请参阅AWS SDK for .NET的AWS文档。
测试AWS加密SDK for .NET
配置AWS凭证
要运行测试套件,您必须首先为与AWS SDK一起使用设置AWS凭证。这需要运行集成测试,该测试使用与公开可访问的KMS CMK的KMS密钥环一起。
设置AWS凭证的说明请参阅AWS SDK for .NET的AWS文档。
运行测试
使用以下命令运行测试套件
dotnet test
通过增加详细程度,您可以看到正在运行哪些测试用例
dotnet test --logger:"console;verbosity=normal"
在设置后通过运行测试向量套件
dotnet test TestVectors
在示例上运行测试,以确保它们是最新的
dotnet test Examples
请注意,测试和测试向量需要互联网访问和有效的AWS凭证,因为KMS调用的部分是测试工作流程的一部分。
生成解密测试向量
生成代码覆盖结果
从Test/目录生成包含代码覆盖结果的coverage.cobertura.xml文件到Test/TestResults/文件,使用
dotnet test --collect:"XPlat Code Coverage" --settings ../runsettings.xml
我们使用Coverlet进行代码覆盖。有关Coverlet命令/额外选项的列表,请参阅以下使用说明。
我们使用ReportGenerator来可视化代码覆盖。
使用以下命令安装ReportGenerator
dotnet new tool-manifest
dotnet tool install dotnet-reportgenerator-globaltool
从Source/生成易于阅读的代码覆盖index.html文件到Test/TestResults/
dotnet reportgenerator
"-reports:../Test/TestResults/coverage.cobertura.xml"
"-targetdir:../Test/TestResults"
要查看代码覆盖报告,请在任何浏览器中打开index.html文件。
许可
本库 licensed under the Apache 2.0 License。
产品 | 版本 兼容的和额外的计算目标框架版本。 |
---|---|
.NET | net5.0 已计算。 net5.0-windows 已计算。 net6.0 已计算。 net6.0-android 已计算。 net6.0-ios 已计算。 net6.0-maccatalyst 已计算。 net6.0-macos 已计算。 net6.0-tvos 已计算。 net6.0-windows 已计算。 net7.0 已计算。 net7.0-android 已计算。 net7.0-ios 已计算。 net7.0-maccatalyst 已计算。 net7.0-macos 已计算。 net7.0-tvos 已计算。 net7.0-windows 已计算。 net8.0 已计算。 net8.0-android 已计算。 net8.0-browser 已计算。 net8.0-ios 已计算。 net8.0-maccatalyst 已计算。 net8.0-macos 已计算。 net8.0-tvos 已计算。 net8.0-windows 已计算。 |
.NET Core | netcoreapp3.0 已计算。 netcoreapp3.1 已计算。 |
.NET Standard | netstandard2.1 兼容。 |
.NET Framework | net452 兼容。 net46 已计算。 net461 已计算。 net462 已计算。 net463 已计算。 net47 已计算。 net471 已计算。 net472 已计算。 net48 已计算。 net481 已计算。 |
MonoAndroid | monoandroid 已计算。 |
MonoMac | monomac 已计算。 |
MonoTouch | monotouch 已计算。 |
Tizen | tizen60 已计算。 |
Xamarin.iOS | xamarinios 已计算。 |
Xamarin.Mac | xamarinmac 已计算。 |
Xamarin.TVOS | xamarintvos 已计算。 |
Xamarin.WatchOS | xamarinwatchos 已计算。 |
-
.NETFramework 4.5.2
- AWSSDK.Core (>= 3.7.9.2)
- AWSSDK.KeyManagementService (>= 3.7.2)
- Portable.BouncyCastle (>= 1.8.5.2)
- System.Collections.Immutable (>= 1.7.0)
- System.ValueTuple (>= 4.5.0)
-
.NETStandard 2.1
- AWSSDK.Core (>= 3.7.9.2)
- AWSSDK.KeyManagementService (>= 3.7.2)
- Portable.BouncyCastle (>= 1.8.5.2)
- System.Collections.Immutable (>= 1.7.0)
- System.ValueTuple (>= 4.5.0)
NuGet 包 (1)
显示依赖于 AWS.EncryptionSDK 的前 1 个 NuGet 包
包 | 下载 |
---|---|
Tiger.ContinuationToken
编码应用程序续订标记的模型绑定器。 |
GitHub 仓库
这个包未被任何流行的 GitHub 仓库使用。