问题标签 [always-encrypted]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - Sql 2016 Always Encrypted - 使用加密和非加密列加入操作?
如何在 Sql server 2016 中使用加密和非加密列执行联接操作。我使用 .net 框架 4.6.1。列加密设置 = 在连接字符串中启用。
代码 :
错误 :
dapper - 如何使用带有 Dapper ORM 的 Azure Sql Always Encrypted?
是否有可能将 DapperORM 与 (Azure) SQL 2016 Always Encrypted 一起使用?是否有任何文档如何使用和最佳实践?
特别是新的参数属性输入方向和输入长度如何处理?
sql - 如何加密列 SQL Server 2016 Always Encrypted ?-更改查询
在 SQL Server 2016 中使用“始终加密”的查询很容易加密列。但是我们有现有的表。那么如何加密现有表中的列呢?我需要它使用改变查询。
我尝试了以下查询
sql-server - 如何从始终加密的列中选择存储过程参数的值
我已经加密了表中的一列 mob_no。加密列后,存储过程出错。
我在下面添加了sp
运行此 sp 时出现以下错误
消息 33299,列/变量“@mobNo”的加密方案不匹配。列/变量的加密方案是 (encryption_type = 'PLAINTEXT') 并且行 '9' 附近的表达式期望它是 (encryption_type = 'DETERMINISTIC', encryption_algorithm_name = 'AEAD_AES_256_CBC_HMAC_SHA_256', column_encryption_key_name = 'xxxx', column_encryption_key_database_name = ' mydb') (或更弱)。
sql-server - SQL Server Always Encrypted 与 .NET Core 不兼容
我正在尝试将 SQL Server 2016 的 Always Encrypted 功能与 .NET Core 一起使用,但似乎(还)无法使用。尝试Microsoft.SqlServer.Management.AlwaysEncrypted.AzureKeyVaultProvider
从 Nuget 导入时,我收到一条错误消息,指出它不兼容:
包 Microsoft.SqlServer.Management.AlwaysEncrypted.AzureKeyVaultProvider 1.0.201501028 与 netstandard1.6 (.NETStandard,Version=v1.6) 不兼容
关于如何/在哪里获得兼容版本的任何想法?
sql-server - SQL Server Always Encrypted with Access
我看到 SQL Server 2016 SP1 所有版本现在都有“始终加密”可用。环顾四周,似乎有一个新的 ODBC 驱动程序可以处理“始终加密”的数据。
根据 SQL Server 文档中有关使用加密列的警告,是否有人有使用 Microsoft Access 加密的经验?它可以与 Access 2010 一起使用,还是需要更新版本?
加密/解密是否有明显的性能影响?我读对了吗,因为连接和 where 子句需要对加密列进行额外处理,最佳实践是不使用敏感列作为键。
另外,我有一个 Access 项目——这可以在项目 (adp) 中与 Access 2010 一起使用,还是我必须更新到应用程序的 .accdb 版本?
c# - Azure Key Vault .NET - 找不到方法
我想在我的 .NET 应用程序中使用 Always Encrypted SQL 2016 DB 和 Azure Key Vault 来存储加密密钥。到目前为止,我一直在关注这篇文章: https ://blogs.msdn.microsoft.com/sqlsecurity/2015/11/10/using-the-azure-key-vault-key-store-provider-for-always-encrypted /
但是当我到达文章中提供的这行代码时,我收到了一个异常:
例外是:
我检查了我的参考资料,一切似乎都已到位。GetToken 认证回调方法也有。
任何人都可以帮忙吗?谢谢。
sql-server - 使用 .net Core / EF Core 在 ASP MVC 应用程序中使用 SQL Server 2016 进行列加密
我正在尝试使用 SQL Server 2016 中的“始终加密”功能来加密某些列。我使用这篇文章作为指南,将列设置为在 SSDT 中加密。
那部分很好,当我尝试从应用程序中查询数据时,我得到了一个错误。根据文档,我需要添加以下内容:
到我的连接字符串。Entity Framework Core 似乎不支持此功能。我收到此错误:
不支持列加密设置=启用
我也尝试使用SqlConnectionStringBuilder
来构建字符串,但不存在添加该设置的能力。它似乎确实存在于 .NET 4.6 中。
那么,是否有人知道使用 Always Encrypted 从 .NET Core 应用程序连接到 SQL Server 实例的方法?
sql-server - 通过过程始终加密与 2 个数据库通信
目前,我正在将我的数据库迁移到始终加密的 SQL Server 2016。我有 2 个数据库,并通过存储过程从另一个表中的一个数据库中选择数据。使用 DB2 中的存储过程从 DB1 选择或更新加密列时,出现操作数类型冲突:错误。我已经为具有相同名称和相同证书的 2 个数据库创建了列主密钥和列。
两个数据库中客户中的 SSN 列都已加密,但是当我运行它时,出现以下错误:
消息 33277,级别 16,状态 6,过程 copy_customer,第 891 行 [批处理开始行 167] 列/变量“@psSSN”的加密方案不匹配。列/变量的加密方案是 (encryption_type = 'DETERMINISTIC', encryption_algorithm_name = 'AEAD_AES_256_CBC_HMAC_SHA_256', column_encryption_key_name = 'TestCEK', column_encryption_key_database_name = 'CustDb2') 并且行 '940' 附近的表达式期望它是 (encryption_type = ' DETERMINISTIC',encryption_algorithm_name = 'AEAD_AES_256_CBC_HMAC_SHA_256',column_encryption_key_name = 'TestCEK',column_encryption_key_database_name = 'CustDb1')。
entity-framework-6 - 使用 EF6 插入数据时出错并始终加密
我们在使用 EF6 和始终加密功能时遇到了一些问题。
我相信我们需要在 中设置一些东西DBContext
,以指示如何加密或解密列,但我找不到这样做的方法。
我们已经有一个 ADO 访问层,它与加密字段完美配合。我们宁愿使用 EF 而不是 ADO。
症状是:
- 使用EF,我们可以查询数据。并且解密过程工作正常。
- 插入过程抛出以下错误:
操作数类型冲突:varchar 与使用 (encryption_type = 'DETERMINISTIC', encryption_algorithm_name = 'AEAD_AES_256_CBC_HMAC_SHA_256', column_encryption_key_name = 'CEK_Auto1', column_encryption_key_database_name = 'Development_v2_qa') collation_name = _SQL_Latin_1_加密的 varchar(8000) 不兼容
- 使用 where 子句查询,使用加密字段,会引发相同的错误。
使用的技术:
- 带有 Poco 实体的 EF6。
- AzureKeyVault 用于存储加密/解密主密钥。
- 使用 SSL 证书对 KeyVault 进行身份验证
- 连接字符串包含“列加密设置=启用;”
- AzureSqlServer
- FWK4.6
- ADO
我们有一些代码可以很好地与 ADO 配合使用。它适用于每个SqlConnection