General Availability - Create tests by adding HTTP requests in Azure Load Testing

Azure 負載測試正式發佈了一項新功能,可簡化創建負載測試的過程。現在,無需製作 JMeter 腳本,而是可以直接在門戶中輸入 HTTP 請求。這消除了對測試工具的先驗知識的需求,使用戶更容易運行測試。

輸入請求非常簡單 - 只需指定端點、HTTP 方法、標頭、查詢參數和請求正文。如果您願意,甚至可以對請求使用 cURL 命令。此增強功能簡化了負載測試體驗,使用戶能夠快速高效地開始使用。

瞭解更多資訊: https://learn.microsoft.com/zh-tw/azure/load-testing/quickstart-create-and-run-load-test?tabs=portal

Enjoy. 2024-1-10 By Jacky

Azure and PCI DSS

Azure PCI DSS 相關資訊:

Microsoft Azure 如何遵守 Payment Card Industry (PCI) Data Security Standards (DSS) 的資訊。以下是一些重要的摘要:

  1. PCI DSS 是一種全球資訊安全標準,旨在通過增加信用卡數據的控制來防止欺詐。

  2. 任何存儲、處理或傳輸持卡人數據的組織都需要遵守 PCI DSS,這至少包括完整的主帳號(PAN)。

  3. PCI DSS 根據交易量劃分為四個合規等級,其中服務提供商等級 1 對應於每年超過 600 萬的交易量。

  4. Microsoft Azure 使用經過批准的合格安全評估員(QSA)維護 PCI DSS 驗證,並已獲得 PCI DSS 版本 4.0 的服務提供商等級 1 的合規認證。

  5. 如果您想開發持卡人數據環境(CDE)或卡處理服務,您可以依賴 Azure 的驗證,從而減少獲得自己的 PCI DSS 驗證所需的相關努力和成本。

  6. 然而,重要的是要理解,Azure 的 PCI DSS 合規狀態並不自動轉換為您在 Azure 平台上構建或託管的服務的 PCI DSS 驗證。

  7. 您有責任確保您達到 PCI DSS 要求的合規性。

  8. Azure 提供以下資源來幫助您滿足自己的 PCI DSS 合規義務:
    a. Azure PCI DSS 共享責任矩陣指定每個 PCI DSS 要求的責任區域,以及它是由 Azure 或您分配的,還是責任是共享的。請參考: Audit reports

    b. Azure 政策法規合規內置倡議針對 PCI DSS 映射到 PCI DSS 合規領域和控制。請參考: Azure Policy regulatory compliance built-in initiative for PCI DSS

參考資訊:
PCI DSS - Azure Compliance | Microsoft Learn
Regulatory Compliance details for PCI DSS 3.2.1 - Azure Policy | Microsoft Learn

Azure Front Door 簡介

Azure Front Door 是什麼?

許多組織都有應用程式需要提供給其客戶、供應商,且幾乎必然需要提供給其使用者。 棘手的部分是確保這些應用程序具有高可用性。 此外,其必須能夠快速回應,同時受到適當保護。 Azure Front Door 會提供不同的層級 (定價層) 來符合這些需求。 讓我們快速回顧這些層級的功能和優點,讓您可以確定哪一個選項最適合您的需求。

Azure Front Door 定義

Azure Front Door Standard/Premium 提供這三項產品的功能。 其使用 Microsoft 全域邊緣網路來與智慧型威脅防護整合,以提供快速、可靠且更安全的新式雲端 CDN。 Azure Front Door 位於邊緣位置,並可管理對所裝載應用程式的使用者要求。 使用者透過 Microsoft 全球網路連線到您的應用程式。 然後,Azure Front Door 將使用者要求路由傳送至最快速且可用性最高的應用程式後端。

以下是可用的 Azure Front Door 層級:

  • Azure Front Door (傳統),也就是入門等級。 現有的 Azure 客戶通常會使用 Azure 內容傳遞網路和 Azure Web 應用程式防火牆來提供這些功能。
  • Azure Front Door Standard,最適合用於無縫內容傳遞。
  • Azure Front Door Premium,最適合用於加強的安全性。

讓我們更詳細地檢查最後兩個層級。

Azure Front Door Standard

Azure Front Door Standard 提供 Azure Front Door (傳統)、Azure 內容傳遞網路和 Azure Web 應用程式防火牆的功能。 Azure Front Door Standard 包括:

  • 內容傳遞最佳化
  • 靜態和動態內容加速
  • 全域負載平衡
  • 安全通訊端層 (SSL) 卸載
  • 網域和憑證管理
  • 增強的流量分析
  • 基本安全性功能

Azure Front Door Premium

Azure Front Door Premium 提供與 Azure Front Door Standard 相同的功能。 不過,其為安全性最佳化,並且包含下列額外功能:

  • 跨 Web 應用程式防火牆的廣泛安全性功能
  • 私人連結支援
  • 與 Microsoft 威脅情報和安全性分析整合

什麼是安全的新式雲端 CDN?

安全的新式雲端 CDN 會提供分散式的伺服器平台。 這有助於在使用者存取網頁時將延遲降至最低。 在過去,IT 人員可能已使用 CDN 和 Web 應用程式防火牆來控制進出目標應用程式的 HTTP 和 HTTPS 流量。

Azure Front Door 如何將內容傳遞最佳化

Azure Front Door 在第 7 層使用具有分割 TCP 的任意傳播通訊協定,將 HTTP/S 用戶端要求路由至可用性最高且最快速的應用程式後端。 Azure Front Door 路由要求的方式取決於您選取的路由方法和後端健康情況。 Azure Front Door 支援四個路由方法,如下表所述:

  • Latency: 協助確保要求已傳送至可接受敏感度範圍內最低延遲的後端。
  • 優先順序: 當您需要設定主要後端來服務所有流量時,請對您的後端使用系統管理員指派的優先順序。
  • 加權: 當您需要在一組後端之間散發流量時,請對您的後端使用管理員輔助權數。
  • 工作階段親和性: 可讓您為前端主機或網域設定工作階段親和性。 這有助於確保來自相同終端使用者的要求會傳送至相同的後端。

Azure Front Door 也會提供後端狀況監控選項。 Azure Front Door 會定期評估每個已設定後端的健康情況。 這些後端的回應可讓 Azure Front Door 判斷您的用戶端要求可以路由傳送至哪些後端資源。

Azure Front Door 如何協助保護內容

Azure Front Door 提供 Web 應用程式防火牆功能,以協助保護您的 Web 應用程式免於遭受惡意探索和弱點攻擊。 管理應用程式的安全性可能會很困難,因為 Web 應用程式遭鎖定為目標的情況日益增加。

Azure Front Door 會在網路的邊緣運作,以接近潛在的攻擊。 這有助於防止攻擊進入您的網路。 Azure Front Door 的 Web 應用程式防火牆是以您可與一或多個 Azure Front Door 執行個體相關聯的原則做為基礎。 這些防火牆原則包含:

  • 受控規則集,此為預先設定規則的集合
  • 您可以設定的自訂規則

Enjoy. 2023-10-15 By Jacky

Azure Storage - the minimum supported version will be TLS1.2 starting November 1 2024

2024 年 11 月 1 日,Azure Blob 儲存體將停止支援傳輸層安全性 1.0 和 1.1 版。 TLS 1.2 將成為新的最低 TLS 版本。 這項變更會影響所有雲端中使用 TLS 1.0 和 1.1 的現有和新 Blob 儲存體帳戶。 儲存體已經使用 TLS 1.2 的帳戶不會受到這項變更的影響。

若要避免連線到儲存體帳戶的應用程式中斷,您必須確定您的帳戶需要用戶端使用 TLS 1.2 來傳送和接收資料,以及移除 TLS 1.0 和 1.1 版的相依性

更多訊息:
https://learn.microsoft.com/en-us/azure/storage/common/transport-layer-security-configure-migrate-to-tls2

HTH. 2023-11-7 By Jacky

GitHub Advanced Security for Azure DevOps

##正式發佈##

從 2023 年 9 月 20 日開始,適用於 Azure DevOps 的 GitHub Advanced Security 的核心掃描功能現在可以在 Azure DevOps 中自行啟用,並連接到 Microsoft Defender for Cloud。客戶可以使用以下方法在開發人員工作流中自動執行安全檢查:

*代碼掃描:定位原始程式碼中的漏洞並提供修復指導。
*機密掃描:識別高可信度機密,並阻止開發人員將機密推送到代碼存儲庫中。
*依賴關係掃描:發現具有開源依賴關係的漏洞,併為開發人員自動發出更新警報。

這些功能將幫助開發人員在軟體開發生命週期的早期實現安全性,以便在將代碼部署到生產環境之前發現和修復問題。

文件:https://devblogs.microsoft.com/devops/now-generally-available-github-advanced-security-for-azure-devops-is-ready-for-you-to-use/

Enjoy. By Jacky 2023-9-27

GitHub Copilot 簡介

簡介

GitHub Copilot 是世界上首個大規模 AI 開發人員工具,可協助您用更少的精力更快地撰寫程式碼。 GitHub Copilot 從註解和程式碼中提取內容,即時建議個別行和整個函式。

研究發現,GitHub Copilot 可以協助開發人員更快地編碼,專注於解决更大的問題,順暢工作的時間更長,並對自己的工作感到更滿足。

GitHub Copilot 的產生式預先訓練語言模型由 OpenAI 建立,由 OpenAI Codex 提供。 Visual Studio Code、Visual Studio、Neovim 和整合式開發環境 (IDE) 的 JetBrains 套件有擴充可用。

GitHub Copilot,您的 AI 配對程式設計師

眾所皆知,AI 正在顛覆技術格局。 AI 正在不斷改變世界的運作方式,以及每個組織和小組的運作方式。 如果我們能好好運用 AI,這些 AI 進展會如催化劑般大幅提升全球開發人員的生產力。

對於開發人員而言,將 AI 功能新增至您慣用及熟悉的開發人員工具,可協助您共同作業、開發、測試及提供產品,且比以往更快且更有效率。

GitHub Copilot 是一項服務,為您提供 AI 配對的程式設計師,可與所有熱門的程式設計語言搭配使用,並大幅加速開發人員整體的生產力。 在最近的研究中,GitHub 和 Microsoft 發現開發人員在使用 GitHub Copilot 處理真實世界的專案和工作時,生產力會顯著地提升。 事實上,在啟動後不到兩年,開發人員在使用 GitHub Copilot 時有遇到下列問題:

  • 46% 的新程式碼現在由 AI 撰寫
  • 整體開發人員生產力快了 55%
  • 74% 的開發人員覺得可更專注在帶來滿足感的工作

GitHub Copilot 是與 OpenAI 合作開發,並由 OpenAI 所建立的 AI 系統 OpenAI Codex 提供。 OpenAI Codex 對於人員如何使用程式碼有強大的知識,而且在程式碼產生方面更勝於 GPT-3,部分的原因是因爲它是由包含較多公用原始程式碼的資料集進行定型。

GitHub Copilot 可作為 Visual Studio Code、Visual Studio、Neovim 和 JetBrains 整合式開發環境 (IDE) 的擴充功能來使用。

GitHub Copilot X

GitHub Copilot 以 AI 配對程式設計師的身分啟動了軟體發展的新世代,可透過自動完成註解和程式碼讓開發人員保持流程順暢,但 AI 支援的自動完成只是起點而已。 GitHub Copilot X 是採用 OpenAI 最新 GPT-4 模型之 AI 支援軟體發展的未來願景。

GitHub Copilot X 的功能不只是個編輯器,而是會在整個開發生命週期中,成爲可輕易存取的 AI 助理。

以下是即將推出的 GitHub Copilot X 一些可預期的功能。

  • 透用 GitHub Copilot Chat 在編輯器中享受類似 ChatGPT 的體驗
    Copilot X 會將聊天介面帶入編輯器,其著重於開發人員案例,並以原生方式與 VS Code 和 Visual Studio 整合。 它會辨識開發人員所輸入的程式碼、顯示哪些錯誤訊息,並深入內嵌在 IDE 中。 開發人員可以深入分析和說明程式碼區塊的用途、產生單元測試,甚至取得錯誤的建議修正。

  • 提取要求的 Copilot
    這項新功能是由 OpenAI 的新 GPT-4 模型所提供,並透過組織系統管理員和個別存放庫擁有者可安裝的 GitHub 應用程式,在提取要求描述中新增 AI 支援標籤的支援。 GitHub Copilot 會根據變更的程式碼自動填入這些標籤。 開發人員接著可以檢閱或修改建議的描述。

  • 關於文件 AI 產生的解答
    GitHub 正在啟動 Docs 的 GitHub Copilot,這是一個實驗性工具,其使用聊天介面為使用者提供關於文件問題 AI 所產生的回應,包括開發人員對於他們正在使用的語言、架構和技術的問題。

適用於命令列介面 (CLI) 的 Copilot

在編輯器和提取要求旁邊,終端機是開發人員花費最多時間的地方。 但即使是最熟悉的開發人員也需要捲動許多頁面,才能記住許多命令的精確語法。 GitHub Copilot CLI 可以撰寫命令和迴圈,並擲回模糊尋找旗標以滿足您的查詢。

商務用 GitHub Copilot

GitHub Copilot 可透過具有個人 GitHub Copilot 的 GitHub 個人帳戶,或透過具有商務用 GitHub Copilot 的組織或企業帳戶取得。

透過商務用 Copilot,您可以管理企業內組織的 GitHub Copilot 存取權。 一旦您將組織存取權授與 GitHub Copilot,該組織的系統管理員就可以將存取權授與個人和小組。

透過商務用 GitHub Copilot,GitHub Copilot 會開放給每個開發人員、小組、組織和企業使用。

著重於讓組織更具生產力、安全且滿足需求,商務用 GitHub Copilot 可讓開發人員更快速地撰寫程式碼,並讓他們專注於更滿足的工作。

以下是自商務用 Copilot 您可以預期的一些功能:

  • 更強大的 AI 模型:新的模型演算法可改善程式碼建議的品質。
  • 以 AI 為基礎的資訊安全漏洞篩選: GitHub Copilot 以硬式編碼認證、SQL 插入和路徑插入等問題為目標,自動封鎖常見的不安全程式碼建議。
  • VPN Proxy 支援: GitHub Copilot 與 VPN 搭配運作,包括自我簽署憑證,讓開發人員可以在任何工作環境中使用它。
  • 簡單註冊: 任何公司都可以在線上快速購買商務用 Copilot 授權,並輕鬆地指派基座,即使他們將 GitHub 平台用於原始程式碼也一樣。

企業可以用 Azure 訂閱連結 Github Copilot 的費用, 讓企業在帳務處理更方便, 設定方式請參考:
GitHub 組織帳號連結 Azure 訂閱帳單Step-by-step 教學

註冊 GitHub Copilot

在開始使用 GitHub Copilot 之前,您必須先為個人帳戶設定免費試用或訂用帳戶。

若要這樣做,您可以選取設定檔相片,然後選取 [設定]。 在左側功能表上,Copilot 位於 [程式碼、規劃和自動化] 下方。

註冊之後,您必須為慣用的環境安裝延伸模組。 GitHub Copilot 支援 GitHub.com、Visual Studio Code、Visual Studio、JetBrains IDE 和 Neovim 做為非干擾性延伸模組。

在 Visual Studio Code 中設定 GitHub Copilot

  • 在 Visual Studio Code Marketplace 中,移至 [GitHub Copilot 延伸模組] 頁面,然後選取 [安裝]。
  • 快顯視窗即會出現,要求開啟 Visual Studio Code。 選取 [開啟]。
  • 在 Visual Studio Code 的 [延伸模組: GitHub Copilot] 索引標籤中,選取 [安裝]。
  • 如果您先前尚未在 GitHub 帳戶中授權 Visual Studio Code,系統會提示您在 Visual Studio Code 中登入 GitHub。 選取 [登入 GitHub]。
  • 當您使用 Visual Studio Code 時,GitHub Copilot 可以自動完成程式碼。 安裝之後,您可以啟用或停用 GitHub Copilot,而且您可以在 Visual Studio Code 內設定進階設定。

HTH. 2023-9-18 By Jacky

Github Copilot X 初體驗

GitHub Copilot 是由 GitHub 和 OpenAI 開發的 AI 工具,它可以説明 Visual Studio Code、Visual Studio、Neovim 和 JetBrains 集成開發環境(IDE)的用戶自動完成代碼。 它在編寫代碼時提供自動完成建議,分析檔和相關文件以在文本編輯器中提供建議。 Copilot 使用 OpenAI Codex 模型來建議相關代碼,從頭開始提供整個函數,甚至即時為程式師提供完整的演算法。 自發佈以來,GitHub Copilot 已經為超過一百萬人的開發者提高了生產力,幫助開發者編寫代碼的速度提高了.

更多介紹可以參考: Github Copilot

自從 Github Copilot X 的出現, 讓我非常期待這個升級到 GPT-4 的下一代 Copilot. 是不是真的出一張嘴就可以完成工作.

因為目前 Copilot X 尚在預覽階段, 需要申請才能使用.

介紹及申請連結

往下即可看到 “Sign up for the technical preview”
申請連結

加入候選清單即可. 如果已通過, 會看到 “You’re in” 的說明, 如下圖:
申請連結

在 Visual Studio Code 要注意下列 2 點:

  1. 要安裝 Visual Studio Code Insider 版本
    Visual Studio Code Insider

  2. 安裝 Github Copilot Nightly Extension.
    Github Copilot Nightly Extension

準備工作完成, 可以看到 Visual Studio Code 左邊會出現對話圖示:
Github Copilot X

我們來測試出一張嘴做事法.

對話 1 :
I need to deploy a server on Azure.

對話 1

對話 2 :
It’s a webserver that needs to handle heavy & variable traffic. It needs to be resilient to any kind of failure. The server also connects to SQL DB where state is stored. The database also needs to handle heavy traffic and be resilient to any kind of failure. I prefer the cost to be as low as possible but without compromising on availability. The communication between server and storage needs to be secure and encrypted. The database must not be public facing. I need complete control on the infrastructure.

對話 2

對話 3 :
Please give me the full deployment script of my requirements.
對話 3

對話 4 : 用 Copilot 提示的問題.
對話 4

對話 5 : 用 Copilot 提示的問題.
對話 5

心得:

  1. 這次不以程式碼的問題測試, 而是以一個 Azure 小白管理員角色來測試對話功能.
  2. 由對話 1, 2, 3 可以發現 Copilot X 可以理解我的問題並提出可行的內容.
  3. 在對話 4, 5 即是我用 Copilot X 依據對話內容所建議的問題: Autoscaling 及 SSL 設定, 這也是蠻符合我的前面的對話.

之後再把打字變成語音輸入, 真的即可出一張嘴就好了.

HTH. 2023-May-26 By Jacky Chiou

Automatic Scaling for Web Apps is now in Public Preview

App Service提供自動調整 (Automatic Scaling),可根據傳入的 HTTP 要求來調整實例數目。 自動調整可確保 Web 應用程式可以管理不同層級的流量。 您可以調整調整設定,例如設定每個 Web 應用程式的實例數目下限和上限,以增強效能。 平臺會藉由在相應放大時作為緩衝區的實例預先處理冷啟動問題,進而產生順暢的效能轉換。 計費會使用現有的計量來計算每秒計費,而預先部署的實例也會每秒收費。

在設定畫面會看到多出 Automatic Scaling 的選項:

App Service上可用的相應放大和相應縮小選項比較:

更多資訊:
https://learn.microsoft.com/en-us/azure/app-service/manage-automatic-scaling?tabs=azure-portal

HTH. 2023-May-8 By Jacky Chiou

Sbom dependency demo

上次分享後有些夥伴私訊問了SBOM 在 Github 示範的內容, 把它分享如下:

Github -> Insights -> Dependency graph

也可以把 spdx 格式的內容匯出到自己的系統匯入.

Github Action 內容:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
name: MSFT SBOM Creation

on:
workflow_dispatch:

jobs:
SBOM-upload:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Generate SBOM
run: |
curl -Lo $RUNNER_TEMP/sbom-tool https://github.com/microsoft/sbom-tool/releases/latest/download/sbom-tool-linux-x64
chmod +x $RUNNER_TEMP/sbom-tool
$RUNNER_TEMP/sbom-tool generate -b . -bc . -pn ${{ github.repository }} -pv 1.0.0 -ps OwnerName -nsb https://sbom.mycompany.com -V Verbose
- uses: actions/upload-artifact@v3
with:
name: sbom
path: _manifest/spdx_2.2

HTH. 2023-04-26 By Jacky