AWS.Cryptography.DbEncryptionSDK.DynamoDb 3.6.1

前缀已保留
dotnet add package AWS.Cryptography.DbEncryptionSDK.DynamoDb --version 3.6.1                
NuGet\Install-Package AWS.Cryptography.DbEncryptionSDK.DynamoDb -Version 3.6.1                
该命令旨在在 Visual Studio 的包管理器控制台中使用,因为它使用了 NuGet 模块的Install-Package 的版本。
<PackageReference Include="AWS.Cryptography.DbEncryptionSDK.DynamoDb" Version="3.6.1" />                
对于支持 PackageReference 的项目,将此 XML 节点复制到项目文件中以引用包。
paket add AWS.Cryptography.DbEncryptionSDK.DynamoDb --version 3.6.1                
#r "nuget: AWS.Cryptography.DbEncryptionSDK.DynamoDb, 3.6.1"                
#r 指令可以在 F# Interactive 和 Polyglot Notebooks 中使用。将其复制到交互式工具或脚本的源代码中以引用包。
// Install AWS.Cryptography.DbEncryptionSDK.DynamoDb as a Cake Addin
#addin nuget:?package=AWS.Cryptography.DbEncryptionSDK.DynamoDb&version=3.6.1

// Install AWS.Cryptography.DbEncryptionSDK.DynamoDb as a Cake Tool
#tool nuget:?package=AWS.Cryptography.DbEncryptionSDK.DynamoDb&version=3.6.1                

DynamoDbEncryption

此项目实现了针对 .NET 的 AWS DynamoDB 数据库加密 SDK。

安全问题通知

使用 AWS DynamoDB 数据库加密 SDK for .NET

AWS DynamoDB 数据库加密 SDK 可在 NuGet 上找到,可以通过常规方式从现有的 .csproj 中引用。

使用 dotnet CLI

dotnet add <your-project-name>.csproj package AWS.Cryptography.DbEncryptionSDK.DynamoDb

另请直接修改 .csproj 文件,将 AWS 数据库加密 SDK for DynamoDB 添加到 PackageReference ItemGroup

<PackageReference Include="AWS.Cryptography.DbEncryptionSDK.DynamoDb" />

AWS DynamoDB 数据库加密 SDK 针对所有平台的 .NET 6.0 及更高版本,以及仅在 Windows 上支持的 .NET Framework 4.8.0 及更高版本。

仅用于 macOS 的额外设置

如果您正在使用 macOS,则必须安装 OpenSSL 1.1,并且 OpenSSL 1.1 的 lib 目录必须在运行时的动态连接器路径上。另外,如果使用基于 M1 的 Mac,则必须安装 OpenSSL 和 x86-64 的 .NET SDK。有关详细信息,请参阅Wiki

为 .NET 构建 AWS DynamoDB 数据库加密 SDK

为了构建,AWS DynamoDB 数据库加密 SDK 需要在您的 PATH 中安装最新版本的 Dafny

AWS DynamoDB 数据库加密 SDK 针对以下框架:net48net6.0。为了构建和测试 AWS DynamoDB 数据库加密 SDK,您必须安装以下 .NET 工具:

您还将需要确保在克隆仓库时使用 git clone --recursive ... 或者在现有的克隆上使用 git submodule update --init 来获取所有子模块。

将所有源文件构建为一个 dll

# Transpile Dafny to .NET
cd DynamoDbEncryption
make transpile_implementation_net
# Run dotnet restore
make setup_net
# Run dotnet build
dotnet build runtimes/net

(可选)设置 AWS DynamoDB 数据库加密 SDK 与 AWS KMS 一起工作

如果您设置 AWS DynamoDB 数据库加密 SDK 以使用 AWS KMS 密钥环,AWS DynamoDB 数据库加密 SDK 将代表您向 AWS KMS 发起调用,使用适当的 AWS SDK。

然而,您必须首先为 AWS SDK 设置 AWS 凭据。设置 AWS 凭据的说明可在AWS SDK for .NET 文档中找到。

测试 AWS DynamoDB 数据库加密 SDK for .NET

配置 AWS 凭据

要运行测试套件,您必须首先为 AWS SDK 设置 AWS 凭据。这是运行集成测试的要求,这些测试使用 KMS 密钥环对公开可访问的 KMS CMK 进行操作。

设置 AWS 凭据的说明可在AWS SDK for .NET 文档中找到。

运行测试

使用以下命令运行测试套件

cd DynamoDbEncryption
make transpile_test_net
# Windows/Linux
make test_net
# On Mac
make test_net_mac_brew

在示例上运行测试,以确保它们是最新的

cd Examples
make transpile_net
cd runtimes/net
dotnet run

请注意,测试和测试向量需要互联网访问和有效的 AWS 凭据,因为调用 KMS 是测试工作流程的一部分。

其他开发建议

大多数 C# IDE 都喜欢 Solution 文件。要为这里的所有项目生成一个 Solution 文件,请运行

cd DynamoDbEncryption/runtimes/net
dotnet new sln --name DBESDK
dotnet sln add $(find . -name '*.csproj')

然后让您的 IDE 打开 DBESDK.sln

许可证

此库根据 Apache 2.0 许可证授权。

产品 兼容的附加计算目标框架版本。
.NET 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 框架 net48 兼容。 net481 已计算。
兼容目标框架
包含目标框架(在包中)
了解更多关于 目标框架.NET Standard

NuGet 包

此包未使用任何 NuGet 包。

GitHub 仓库

此包未使用任何流行的 GitHub 仓库。

版本 下载 最后更新
3.6.1 27 8/14/2024
3.6.0 94 7/25/2024
3.5.0 118 6/4/2024
3.4.0 1,286 5/6/2024
3.3.0 1,978 3/21/2024
3.2.0 2,117 1/17/2024