共用方式為


Power BI 報表伺服器中始終加密

本文詳細說明 Power BI Report Server 在使用 Microsoft SQL Server 和 Microsoft Azure SQL Database 作為資料來源類型時的「持續加密」功能支援。 欲了解更多關於 SQL Server 中 Always Encrypted 功能,請參閱 Always Encrypted 文章。

永遠加密的使用者隔離

目前,如果使用者有報告存取權,Power BI 報告伺服器不會限制對報告中「永遠加密」欄位的存取。 因此,如果伺服器透過欄位主金鑰獲得欄位加密金鑰的存取權,使用者就能存取他們能存取的報告欄位。

始終加密欄位使用

關鍵儲存策略

儲存體 支持
Windows 憑證存放區 Yes
Azure Key Vault
密碼學下一代(CNG)

憑證儲存與存取

需要存取憑證的帳號是服務帳號。 憑證應儲存在當地的電腦憑證庫中。 如需詳細資訊,請參閱:

欄位加密策略

在 Power BI 報表伺服器中,欄位加密策略可以是 確定性的隨機化的。 下表根據所採用的策略,詳細說明了差異。

使用 具決定性 隨機化
可以直接讀取查詢結果,例如 SELECT 語句。 Yes Yes
可作為查詢中的「群組依據」實體使用。 Yes
可用作聚合欄位,但 COUNT 和 DISTINCT 除外。 沒有,除了 COUNT 和 DISTINCT。
可用作報告參數 Yes

閱讀更多關於 確定性加密與隨機加密的資訊

參數使用方式

參數使用僅適用於確定性加密。

單一值參數。 你可以用單一值參數來對付 Always Encrypted 欄位。

多值參數。 你不能使用具有多個值的多值參數於 Always Encrypted 欄位。

串聯參數。 如果以下 條件皆 成立,你可以用 Always Encrypted 的串接參數:

  • 所有「始終加密」欄位都必須透過確定性策略加密。
  • 所有用於「始終加密」欄位的參數皆為單一值參數。
  • 所有 SQL 比較皆使用 Equals (=) 運算子。

資料型別支援

SQL 資料型別 支援讀取欄位 作為群組元素的支援使用 支援的聚合(COUNT、DISTINCT、MAX、MIN、SUM 等) 支援透過參數進行等值篩選 註釋
int Yes Yes 計數,不同 是的,作為整數
float Yes Yes 計數,不同 是的,作為浮動
NVARCHAR Yes Yes 計數,不同 是的,以文字形式 確定性加密必須針對字元資料行使用 binary2 排序次序的資料行定序。 詳情請參閱 SQL Server Always Encrypted 文章。
瓦查爾 Yes Yes 計數,不同
十進位 Yes Yes 計數,不同
數字的 Yes Yes 計數,不同
日期時間 Yes Yes 計數,不同
datetime2 Yes Yes 計數,不同 是的,日期/時間 若欄位沒有毫秒精度(換句話說,沒有 datetime2(0)),則會支援。

聚合替代方案

目前唯一支援針對確定性「永遠加密」欄位的聚合,是直接使用 Equals (=) 運算子的聚合。 SQL Server 的限制源自於「始終加密」欄位的特性。 使用者必須在報告內彙整,而非資料庫中。

在連線字串中啟用「永遠加密」

你需要在 SQL Server 資料來源的連線字串啟用 Always Encrypted。 閱讀更多關於在 應用程式查詢中啟用 Always Encrypted 的資訊。

其他問題嗎? 試著向 Power BI 社群提問