利用 Azure CDN 發佈靜態網站

代貼北科大劉建昌同學撰寫之技術文件 在 Azure 上建立網站有相當多的選項。包括使用 Azure App Service Web Apps (舊名 Azure Websites )、Azure Cloud Service,甚至是直接使用 Azure Virtual Machine 皆能夠達到這些目的。當然這些方式都各有各的優缺點及優勢存在,而使用哪一個完全取決於使用者的需求。 若是您的服務只是一個靜態網站,只有內容呈現,而無資料處理。此時使用 Azure App Service Web Apps (舊名 Azure Websites )、 或是 Azure Virtual Machine等雲端解決方案,就顯得有點浪費,因為您除了需要負擔較為昂貴的設備租用費用,還可能要面臨較為複雜的開發流程。因此本篇文章將介紹一個最簡單的方式,使用 Azure Blob Storage 佈署一個靜態網站 ,(靜態網站可能包含 Flash、圖片、影片、Javascript、CSS 等常見元素),並且再透過 Azure CDN 來增加網站的承載負載能量。 1. 建立 Azure Storage Account 與佈署靜態網站 首先我們需要建立一個 Azure Storage Account,並且此帳戶下建立許多 Public Blob…

0

Azure Logic App – 使用 Twilio Connector 傳送簡訊

在佈署服務到Azure上後,一個常常遇到的問題就是如果服務出了狀況,要怎麼收到及時的通知。目前Azure預設功能僅有提供email通知;但是收email有時還是會有遺漏的狀況,這時如果需要透過簡訊的話,只能透過開發程式完成。 現在,隨著Azure App Services加入了更多的Connector,只需要在Azure portal上拖拉就從指定的電子郵件信箱收信,然後將訊息發給指定的電話號碼了。 這樣的功能,在Azure上是透過Twilio Connector來達成;Twilio是一家提供簡訊、語音服務的公司;它們提供了完整的API給開發者透過REST API、C#、PHP…etc來呼叫他們的服務傳送簡訊或是語音訊息。並且,你也可以透過Twilio來取得一組國外的電話號碼。 首先,登入Twilio網站註冊一個免費試用帳號:http://ahoy.twilio.com/azure 註冊完成後,記得申請一組電話號碼並啟用SMS功能。 記住Twilio的Account SID與Auth Token,稍後我們會用到。 登入Azure Portal https://portal.azure.com 建立一個新的Logic App 點開Trigger and Actions編輯視窗,加入POP3 Connector與Twilio Connector。其中,POP3 Connector試了要從我們指定的email收信,這裡應該會是我們的Account Live ID信箱。Twilio Connector則是要將信件內容透過Twilio API發送簡訊到我們的手機上 畫面看起來應該是這樣子的 在這裡把信箱的POP3登入資訊,以及剛剛Twilio的Account ID & Auth Token填入後。等待API App建立完成 接著,編輯POP3 Connector的Get Email Trigger 設定多久收一次信,這邊我設定每分鐘收一次;請注意,如果你的Web Plan是選擇Free Tier的話,可能沒有辦法用這麼短的時間間隔收信 按下完成後,接著編輯Twilio Connector的Send Message Action 在From Phone Number欄位,填上剛剛在Twilio取得的電話號碼;To Phone Number填上收信人的電話號碼 Text則是簡訊的內容,這裡選擇信件的Subject 按下完成後,存檔 等待Logic App建立完成,發一封信到剛剛指定的信箱,稍後一會,就可以收到簡訊了!由於是試用帳號,因此簡訊前面會有”Sent from…

0

Microsoft Azure Media Services 即時編碼 (Live Encoding) 簡介

感謝北科大劉建昌同學協助翻譯微軟公司 Azure Media Services 主管 Anil Murching 於 2015/4/13 發表的文章 An introduction to Live Encoding with Azure Media Services ( http://azure.microsoft.com/blog/2015/04/13/an-introduction-to-live-encoding-with-azure-media-services/ ) ,目前本篇所介紹之內容尚未進入公開技術預覽階段,欲參與 Azure Media Services 即時編碼功能技術預覽的用戶請發信至 amslived@microsoft.com 申請。 自從去年我們發佈了 Microsoft Azure Media Services 即時直播服務 ( Live Streaming ) 之後,相當多的使用者已經透過這項兼具穩定性和高擴充性的服務來進行影音串流直播。您若有興趣可以參考之前撰寫的這篇文章,裡面有詳細的資訊,介紹如何使用 Azure 入口管理網站或是 .NET SDK 以 Microsoft Azure Media Services 來進行影音串流直播。 在過去為了要進行直播串流 ( Live Streaming ),您需要自行準備一個第三方的編碼器 (…

0

全新的 Azure App 服務 (Azure App Service) 正式亮相

現在是一個強調 "行動優先、雲端優先" 的世界,每一間企業都想要透過提供具有良好體驗的應用程式與目標客戶建立連結與互動,同時也期望能夠透過這些應用程式讓公司員工更具有生產力。這些應用程式都需要能夠正常在各種裝置上 (無論是運作在各種行動裝置或是個人電腦) 運作,並且,能夠與其他應用程式或資料整合。我們非常高興地向大家宣布一項全新的服務 – Azure App 服務 (Azure App Service),這項服務提供一種強大而完整的應用程式開發解決方案。Azure App 服務是一項整合式的服務,讓您能夠在任何平台或裝置上,建立網頁式與行動裝置式的應用程式,同時,您能夠輕易地整合其他軟體即服務 (Software as a Service, SaaS) 的服務 (例如: Office 365、Dynamics CRM、Salesforce或Twilio等),您也能夠輕易地整合本地端 (on-premises) 應用程式 (例如: SAP、Oracle或Siebel等),同時滿足企業自動化流程的需要、符合高度資訊安全的保護、隨時依據企業實際需求增減相關計算或儲存資源等 Azure App 服務 (Azure App Service) Azure App 服務整合了既有的 Azure 網站服務 (Azure Websites) 與 Azure 行動服務 (Azure Mobile Service) 之外,也新增兩項 Azure 的服務 – Azure 邏輯與工作流程應用程式 (Azure Logic/Workflow App) 與 Azure API…

0

保護機敏資料的幫手 – 再談 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

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 網站上的全新 Application Insights 功能

本文章是翻譯微軟公司 Azure 網站 (Azure Websites) 程式經理 Byron Tardif 於 2015 年 1 月 15 日所發表的文章 http://azure.microsoft.com/blog/2015/01/15/new-application-insights-functionality-on-azure-websites-with-the-application-insights-website-extension/ Application Insights 目前仍是一個預覽功能的服務,此服務是設計來協助開發團隊能夠獲得全方位的視野,橫跨開發團隊應用程式的可用性 (Availability)、效能 (Performance) 以及使用量 (Usage) 等資訊,提供快速、強大的問題診斷與排除和使用量的深度資訊。全新的 Application Insights 就是橫跨 Auzre Application Insights 團隊與 Azure 網站團隊緊密合作產出的網站延伸套件。當您替 Azure 網站服務啟用這個延伸套件後,您將可以看到與您的應用程式相關的統計資料。您可以深入分析這些相關資料,像是包含某些特殊的需求或您的網站與網站應用程式之間的相互效能影響等。 上圖即是透過 Applicaion Insights 顯示的資訊。您可以在 Vlad Joanovic 的 Visual Studio 部落格中取得更詳細的技術細節和設定操作說明等資訊,Azure Application Insight 團隊在未來幾個月內,也將會持續地提供更多功能給使用者。

9

Flavorus 透過 Microsoft Azure 建置售票系統,順利在 10 秒之內成功售出 150,000 張門票

感謝北科大劉建昌同學翻譯微軟公司 Azure 案例研究 Flavorus – Ticketing Company Scales to Sell 150,000 Tickets in 10 Seconds by Moving to Cloud Computing Solution http://www.microsoft.com/casestudies/Windows-Azure/Flavorus/Ticketing-Company-Scales-to-Sell-150-000-Tickets-in-10-Seconds-by-Moving-to-Cloud-Computing-Solution/4000011072,並將所提及之 Azure 相關服務修正為目前之正式名稱 Flavorus 透過雲端解決方案來建置售票系統,讓系統順利在 10 秒之內成功售出 150,000 張門票。 Flavorus 公司為美國一間知名的票務公司,透過自己的網站來販售演唱會、展覽、戲劇等活動的門票。 在 2011 年 1 月,Flavorus 公司負責了一個大型音樂祭的購票業務,為了要滿足購票可能湧入的大量流量,因此將票務系統從本地端自建機房移轉到雲端上。該公司建立了自己的 Jetstream 並且與 Microsoft Azure 結合,通過分區化 (sharding) 的技術,將售票流量平均分到不同的資料庫伺服器上。這個雲端解決方法經過了幾個月的開發與測試,在測試的過程中,Flavorus 成功地利用自己的Jetstream 結合 550 個 Microsoft Azure SQL Database,在 10 秒內將…

0

角色存取控制 (Role Based Access Control) 與 Azure 網站 (Azure Websites) 發布

本文章是翻譯微軟公司 Azure 網站 (Azure Websites) 程式經理 Daria Grigoriu 於 2015 年 1 月 5 日所發表的文章 http://azure.microsoft.com/blog/2015/01/05/rbac-and-azure-websites-publishing/ 全新的角色存取控制 (Role Based Access Control, RBAC) 現在已經可以在 Azure 雲端平台取得了,這功能讓組織能夠更加簡單地管理員工與合作夥伴等角色,如何存取企業本身的雲端資源。想要進一步了解有關角色存取控制的資訊,此功能已經獲得 Azure Active Directory 的支援,也同時整合到 Azure 預覽版的入口網站,更詳細的資料,請點選此連結。 Azure 網站 (Azure Websites) 的使用者可以立即地從角色存取控制所提供的功能中,獲得許多好處。例如:具有貢獻者角色存取 (Contributor role access) 權限的使用者可以依據自身所具有的部署權限來發布內容至網站。因為,角色存取控制提供管理不同特性貢獻者的方便性,以及增加相關權限核准與廢除的敏捷性,讓分享網站資源變得更加方便與敏捷。對於管理員將會是一個重要的優勢。 角色存取的例子 一位剛任職的使用者,從 Azure 預覽版入口網站選擇特定的網站,讓此使用者同時也是該網站資源的貢獻者。可以透過以下參考畫面選擇角色。 新增這名使用者為貢獻者。需要注意的是,不同角色可以指派給獨立的資源,或是資源群組。若新增一名外部的使用者時,將會在目錄服務內,同時建立一個客戶 (Guest) 帳號。當需要移除使用者的權限時,其流程就類似指派權限的流程。特別注意的是,當您從角色存取控制移除一個客戶帳號時,並不會同時將目錄服務內的帳號移除。 欲新增一個貢獻者權限的使用者時,您可以在管理控制台上方點選 + 號,挑選出相關的網站資源並進行設定。而具有貢獻者權限的使用者,可以依據自身擁有的部署權限發布相關的設定值。 本地端 Git 發布的例子 接下來是如何透過本地端 Git…

0