保護機敏資料的幫手 – 再談 Azure SQL Database 動態資料遮罩

本文大綱如下: 說明 使用別名來建立遮罩 結論 參考資料 說明 上一篇我們談到使用 Azure SQL Database 動態資料遮罩可以幫助 DBA 或系統管理員,有效防止機敏資料洩漏給未經授權的人員,針對比較單純的情境,只需使用【資料表和資料行】的遮罩方式,就可以在用戶端直接查詢基礎資料表時,提供機敏資料的保護。 甚至是透過預存程序或內崁資料表值函數(inline table-valued function)回傳基礎資料表的內容時,也幾乎不需太多的程式修改成本,就可以防止資料直接外洩。 下圖示範透過預存程序及內崁資料表值函數來取得機敏資料,一樣會被動態資料遮罩功能所保護。 但現實環境當中,資訊系統的複雜度往往不會這麼單純,需要 JOIN 多個基礎資料表,或搭配子查詢及衍生資料表來組合出系統所需的結果集,都是很常見的狀況。 如果只用【資料表和資料行】的遮罩方式可能,在較複雜的情境下會顯得捉襟見肘。 假設我們針對 SalesLT.ProductCategory 資料表的Name資料行、SalesLT.Product 的 ProductID 和 Name 資料行建立遮罩規則(如上圖),在遇到下列 T-SQL 查詢時就會發生,應該被遮罩的 ProdID(原 SalesLT.Product 資料表的 ProductID 資料行)和 ProdName(原 SalesLT.Product 資料表的 Name 資料行)資料行並沒有如預期的被保護,如果這是重要的機敏資料,在這種狀況下則會全都露。 該怎麼防止這種狀況發生,Azure SQL Database 提供了另一種遮罩方式,詳見下一節的說明。 使用別名來建立遮罩 針對非基礎資料表的查詢,如衍生資料表或子查詢或是資料表函數回傳的結果,必須使用【別名】的遮罩方式才能有效防堵機敏資料外洩,在不修改現有應用程式中的查詢語法,將查詢結果集的欄位名稱填入【遮罩項目別名】,其餘遮罩功能則和【資料表和資料行】遮罩規則建立方式相同。 下圖示範在 Azure 入口網站中針對 ProdID 和 ProdName 資料行建立遮罩規則,針對別名 ProdID,以…

0

Azure SQL Database 資安講堂 – 認識資料列層級安全性

本文大綱如下: 說明 權限 限制 學習目標 建立 SQL Database 設定防火牆規則 實作資料列層級安全性 建立篩選述詞函式(Filter Predicate Function) 建立安全性原則(Security Policy) 測試資料列安全性原則 修改資料列層級安全性原則 參考資料 進階學習 說明 Microsoft Azure SQL Database V12 推出資料列層級安全性(Row-Level Security,RLS),為儲存在 SQL Database 裡的資料提供有別於以往的保護機制,要使用這項功能應用程式幾乎不需要過多的修改就可以相容於資料列層級安全性,直接享受資料列層級安全性所帶來的細緻存取控制特性,並且讓資料安全性邏輯集中於資料庫層級,管控資料的安全性可以交給資料庫來完成,應用程式只要像過去那樣連接資料庫並存取資料,藉由資料列層級安全性功能就可以達到資料隔絕的效果,有效避免應用程式開發時,可能因為疏忽而導致存取不該存取的資料。 截至本文撰寫為止,北歐和西歐地區的資料中心 Azure SQL Database V12 已經進入 GA 階段,其他地區除了東亞、東南亞及日本地區資料中心尚未公布 GA 時程外,將依照預定時程陸續於 2015 年 2 月初脫離預覽階段[1]。 權限 要使用資料列層級安全性功能,所需具備的權限如下: ALTER ANY SECURITY POLICY 的權限。 ALTER 結構描述的權限。 篩選述詞函式 SELECT…

0

在 Linux 環境下使用 PHP 存取 Azure SQL Database

代貼北科大劉建昌同學撰寫之技術文章。 隨著雲端應用的普及,企業或是個人在開發應用程式時,都可藉由雲端平台上的託管服務得到高可用性以及高擴展性。Microsoft Azure 提供相當多的雲端解決方案可供客戶選擇,最常應用到的就是雲端資料庫 Azure SQL Database。Linux 用戶常遇到一個共通的問題,如何在 Linux 上以 PHP 連線到 Azure SQL Database ? 若是開發者使用 Windows Server 作業系統做為開發平台時,能夠與Azure SQL Database 完美的結合,不需要經過任何複雜配置與調整,在 Windows Server 使用 PHP 等開源程式碼時,也可以透過微軟提供的 Driver 來進行連結,但若是以 Linux 做為開發平台時,情況會較為複雜。透過本文,將介紹如何利用 FreeTDS 在 Ubuntu 環境下 PHP 連接 Azure SQL Database。TDS 是 Microsoft SQL Server 資料傳輸所使用的封包格式,過去微軟 SQL Server 透過 DB Library API 提供 C 語言使用的…

0

Microsoft Azure DocumentDB , Azure Search 正式推出,A10/A11 等級 Virtual Machine 正式推出,Azure Media Services 編碼器 Media Encoder Premium 公開技術預覽

感謝北科大劉建昌同學協助翻譯微軟公司 Azure 產品行銷主管 Vibhor Kapoor 於 2015/3/5 發表的文章 Microsoft Azure enabling business transformation with updated search and NoSQL data services, encoders for Media Services and more ( http://azure.microsoft.com/blog/2015/03/05/microsoft-azure-enabling-business-transformation-with-updated-search-and-nosql-data-services-encoders-for-media-services-and-more/ ) 在現今資訊複雜且變化快速的環境中,企業需要透過更創新的方式來提供客戶貼心且準確的服務。今天我們很高興的在這裡宣布幾項 Azure 的最新服務訊息,涵蓋了 Azure 中有關巨量資料 (Big data) 和媒體服務 (Media Services) ,以期符合客戶在業務轉型時的需求。 建立針對雲端設計之應用,透過資料來解決問題 開發者想要建立一個雲端應用程式,其能夠支援不同平台或不同版本的物聯網 (IOT)、用戶生成內容、遊戲等應用。他們希望這些應用程式具備高延展性 (highly-scalable) 以及高可靠性 (high reliability)。此時,NoSQL 成為了解決上述需求最好的資料技術。 Azure DocumentDB 是一個完全由雲端業者管理 (fully-managed)、具備高延展性 (highly-scalable) 的 NoSQL…

0

Azure SQL Database V12 GA 版本正式在亞洲地區提供服務

感謝北科大劉建昌同學協助翻譯微軟資料平台行銷主管 Tiffany Wissner  於 2015/2/24 發表的文章 Announcing latest version of Azure SQL Database now GA in Asia; improvements to disaster recovery objectives ( http://azure.microsoft.com/blog/2015/02/24/announcing-latest-version-of-azure-sql-database-now-ga-in-asia-improvements-to-disaster-recovery-objectives-2/ ) 正如先前 2015 年 1 月所宣布的,最新的 Azure SQL Database服務版本 (V12) 開始在歐洲與美國等地釋出正式版本 (general availability , GA)。我們現在很高興的宣布,這個服務版本也將在 Azure 亞洲資料中心登場。 除此之外,在這個最新版本之中,我們更提升了所有資料庫的災難復原時效目標 (disaster recovery objectives)。總之這些新的更新,使得 Azure SQL Database 成為了雲端關鍵性商業應用 (business-critical workloads) 以及本地端資料庫移植至雲端最便捷方式的首選。 最新版本的服務在亞洲上市 目前在亞洲釋出的 Azure…

0

Azure Data Factory- 資訊管線的建立與管理 (技術預覽)

感謝北科大劉建昌同學翻譯微軟公司 Azure Data Factory 團隊主管 Mike Flasko於 2014 年 10 月 29 日所發表的文章 http://azure.microsoft.com/blog/2014/10/29/data-factory-public-preview-build-and-manage-information-production-pipelines/ 現代企業資料處理的方式相較過往更為多樣化,資料處理往往需要牽涉到多個不同地理位置的資料,面對位於本地與雲端上的資料,甚至較過去更為多樣化的資料型別與更大的資料量,上述原因都會造成資訊系統過於複雜或是多樣化。也因此開發人員必須撰寫大量的客製處理邏輯,以便協調,處理和管理所有產生出來的資料。 我們很高興的宣布,新的 Azure Data Factory 服務正式進入技術預覽階段,可供所有使用者測試和使用。Azure Data Factory 是一個將資料儲存,資料處理,資料搬移運用產生資料管線 (data production pipelines) 方式處理的雲端服務,您僅需要在 Azure 管理網站上透過幾個簡單的步驟,或是使用命令列操作,就能夠建立一個 Data Factory 並且將其與生產的資訊和資源加以結合。在技術預覽階段的 Data Factory 能夠連接到本地端 SQL Server 或是 Azure Storage Blob、Table 與 Azure SQL Database 上的資料。歡迎您將此預覽階段上使用 Azure Data Factory 的心得回饋給我們,我們將會增加更多種資料來源在這項服務上。 關於 Hadoop 巨量資料的處理,在最一開始都是透過 Hive、Pig 或是…

0

Azure SQL Database 標準異地備援 (Standard Geo-Replication) 功能

感謝北科大劉建昌同學翻譯微軟公司 Azure SQL Database 團隊主管  Tony Petrossian 於 2014 年 9 月 3 日所發表的文章 http://azure.microsoft.com/blog/2014/09/03/azure-sql-database-standard-geo-replication/ 在這篇文章中,我們將繼續針對 Azure SQL Database 各種業務連續性 ( Business Continuity ) 方案作介紹,以及討論最近 Azure SQL Database 新釋出的標準異地備援 ( Standard Geo-Replication ) 功能。標準異地備援功能允許您從主要資料庫以非同步 ( asynchronously ) 的方式將已認可的交易 ( committed transactions ) 複製到預先設定妥的備援資料中心 ( Azure Regions )。 在深入討論之前,我們先整理 Azure SQL Database 所有確保業務連續性之解決方案,並且討論它們在各 Azure SQL Database…

0

Azure SQL Database 異地還原 (Geo-Restore) 功能

感謝北科大劉建昌同學翻譯微軟公司 Azure SQL Database 團隊主管  Tony Petrossian 於 2014 年 9 月 13 日所發表的文章 http://azure.microsoft.com/blog/2014/09/13/azure-sql-database-geo-restore/ 本篇文章將會繼續介紹有關於 Azure SQL Database 中針對業務連續性 ( Business Continuity ) 以及災害復原 ( BCDR, Business Continuity and Disaster Recovery ) 相關功能中的異地還原 (Geo-Restore) 功能。在先前介紹標準異地備援 ( Standard Geo-replication ) 文章中,我討論了 Azure SQL Database 不同服務層 ( Service Tier ) 中對於處理災難復原的各項選擇,以下的表格可以讓我們快速的複習。 RTO ( Recovery Time Objective…

0

Azure SQL Database 時間點還原 (Point in Time Restore) 功能

感謝北科大劉建昌同學翻譯微軟公司 Azure SQL Database 團隊主管  Tony Petrossian 於 2014 年 10 月 1 日所發表的文章 http://azure.microsoft.com/blog/2014/10/01/azure-sql-database-point-in-time-restore/ 本篇文章,將說明 Azure SQL Database 的時間點還原 ( Point in Time Restore ) 功能,這項功能在 Azure SQL Database 的 Basic、Standard、Premium 版皆有提供。在先前的文章中,Azure SQL Database 團隊已經介紹了 Azure SQL Database 多項新功能,其中也包含了時間點還原,您可以參考下列圖表。在這份圖表我們可以看到,時間點還原功能是使用最近的資料備份 ( backup ) 來還原受損或是遭到刪除的資料庫。 RTO ( Recovery Time Objective ) :  系統要在多少時間內回復正常 RPO ( Recovery…

2

如何將 MySQL 資料庫轉移到 Microsoft SQL Server 與 Azure SQL Database

代發北科大劉建昌同學所撰寫之技術文件 MySQL 是相當常用之資料庫伺服器,而微軟雲端服務 Microsoft Azure 上 Azure SQL Database 是一個功能強大且經濟實惠的選擇,透過本篇文章,使用 SQL Server Migration Assistant ( 以下簡稱 : SSMA ) 利用幾個簡單的步驟,可將您的 MySQL 資料庫移轉到  Microsoft SQL Server 或是 Azure SQL Database 上。 SQL Server 移轉小幫手 SSMA 支援多種架構的資料庫 (Sybase、Oracle、MySQL) 快速移轉到 Azure SQL Database 或 Microsoft SQL Server。它將移轉資料庫的主要步驟;例如 : 結構 (Schema) 轉換、SQL 陳述式轉換、資料表格移轉等加以自動化,來減少從不同架構的資料庫移轉至 Azure SQL Database 或 Microsoft SQL…

0