CardClash_CloudPractitioner_第3關_無伺服器運算待辦清單的架構

目標

  • 類別: Game-Based Learning
  • 課名: AWS Card Clash – an Architecture Design Game
  • 關卡名稱(遊玩主題): CardClash_CloudPractitioner_第3關_無伺服器運算待辦清單的架構

在這一關中,玩家將設計並建構一個無伺服器的雲端應用架構,支援使用者進行註冊、登入及對待辦清單項目的新增、查詢、修改與刪除(CRUD)操作。

核心任務是善用 AWS 無伺服器服務(如 Lambda、API Gateway、DynamoDB 等)打造一個可擴展、安全且高效的網路應用程式,並學會整合身分驗證與存取控管機制。

完成本關後,玩家將掌握如何設計一個現代化的無伺服器應用,了解服務之間的整合方式,並能實踐以事件為基礎的程式執行邏輯,建立可靈活擴展的應用架構。

第3關的架構圖雛形

架構應用場景

建立一個精簡的待辦清單的網路應用程式,允許登錄的使用者創建、更新、檢視及刪除物品。

相關卡牌的功能說明

Service Cards:

Amazon API Gateway

  • 外觀:  
  • 簡介:
    • Amazon API Gateway 扮演著像協調者的角色,提供應用程式與它依賴的後端服務間精簡的連線。它像是一個警衛,確保這些部件間的溝通是安全且有效率的。就像一座橋連接著兩個海岸,API Gateway 讓應用程式能訪問數據及後端服務的功能,同時管理著不同協定與介面間的複雜度。它像一個可靠的仲介,處理翻譯、安全性以及擴展性,讓開發者可以專注於建立傑出的應用程式。
  • 功能:
    • 透過安全的連接應用程式與後端服務實現精簡化 API 管理。
  • 更多資訊: https://aws.amazon.com/tw/api-gateway/ 

Amazon Cognito

  • 外觀:  
  • 簡介:
    • 提供託管的使用者身分管理系統,支援社群登入(如 Google、Facebook)及企業身份提供者,並內建 MFA、多租戶與自訂登入流程,讓使用者驗證流程安全且彈性。可以獲得對AWS服務(例如 Amazon S3、Amazon DynamoDB 和 AWS Lambda)的安全、基於角色的存取權。
  • 功能:
    • 透過一個符合成本效益且客製化的平台,提供無障礙的客戶身分和存取管理(CIAM)。
  • 更多資訊: https://aws.amazon.com/tw/cognito/ 

Amazon DynamoDB

  • 外觀:  
  • 簡介:
    • 一個完全託管、無伺服器的鍵值 NoSQL 資料庫,旨在以任何規模運行高效能的應用。
  • 功能:
    • 提供內建安全性、持續備份、自動多區域複製、內存快取以及資料導入導出工具。
  • 更多資訊: https://aws.amazon.com/tw/dynamodb/ 

AWS Lamda

  • 外觀:  
  • 簡介:
    • 像是使用者的魔法棒,幫助使用者執行程式碼,而無須擔心底層基礎設施。像擁有一個無伺服器的施法者。
  • 功能:
    • 自動處理擴展、部署和運行,根據事件觸發執行程式碼。
  • 更多資訊: https://aws.amazon.com/tw/lambda/ 

Amazon Route 53

  • 外觀: 
  • 簡介:
    • Amazon Route 53 是你的的虛擬流量管理員,像是在網際網路上擁有一個熟練的空中交通管制員,Route 53 有效率的發送終端使用者的請求至適當的資源,無論是引導訪客至一個網站或傳送請求至特定的服務,它就像網際網路的 GPS,確保請求能以最快速且最可靠的路徑傳送。透過 Route 53,你擁有管理網域名稱、控制流量,並讓你的線上狀態順暢運行的能力。
  • 功能:
    • 有效率的管理擁有可擴充的註冊和 DNS 服務的網域。
  • 更多資訊: https://aws.amazon.com/tw/route53/ 

Security Cards:

IAM

  • 外觀:
  • 簡介:
    • 全名為 AWS identity and Access Management ,在雲端中擔任安全守衛,它像是一個警覺的門衛,在俱樂部門口只允許授權的訪客進入。
  • 功能:
    • 控制對 AWS 資源的存取,定義誰能執行特定操作以及他們可以與那些資源互動。擁有一個可自訂的安全策略,可強制執行規則、防止未經授權的存取。
  • 更多資訊: https://aws.amazon.com/tw/iam/ 

Others:

AWS CLI

  • 外觀:
  • 簡介:
    • 像是使用者的雲端運算中央控制中心,提供一個可視化所有使用者雲端資源及工具的控制面板。
  • 功能:
    • 使用者友善的網頁介面整合了管理、監控雲端環境以及跟雲端環境互動的流程,能瀏覽、調整設定以及觀察和維護使用者雲端資源的健康度及效能。
  • 更多資訊: https://aws.amazon.com/tw/cli/ 

AWS Management Console

  • 外觀: 
  • 簡介:
    • 像是使用者的雲端運算中央控制中心,提供一個可視化所有使用者雲端資源及工具的控制面板。
  • 功能:
    • 使用者友善的網頁介面整合了管理、監控雲端環境以及跟雲端環境互動的流程,能瀏覽、調整設定以及觀察和維護使用者雲端資源的健康度及效能。
  • 更多資訊: https://aws.amazon.com/tw/console/ 

AWS Cloud Formation

  • 外觀:  
  • 簡介:
    • 使用者的虛擬架構師,使用者定義所需資源及其關係, Cloud Formation 會根據這些定義建立模板,並處理繁重的部署工作。
  • 功能:
    • 以結構化的方式引導雲端環境的創建與管理,用於規劃雲端基礎設施的布局。協調雲端資源的佈建及配置,確保一致性並減少手動工作。
  • 更多資訊: https://aws.amazon.com/tw/cloudformation/ 

最終架構圖樣貌

結論

在本關卡中,玩家成功設計並部署了一個無伺服器架構的網路應用,深入了解如何利用 Amazon API Gateway、Lambda、Cognito 與 DynamoDB 等服務互相協作,完成一套完整的待辦清單應用。

玩家學會了如何透過 Cognito 實作安全的身分驗證與授權機制、使用 API Gateway 作為入口,觸發 Lambda 執行後端邏輯、運用 DynamoDB 儲存使用者資料與待辦事項、整合 IAM 與安全機制,實現細緻的權限控管、利用 Route 53 進行 DNS 導流管理

這一關的核心在於理解「事件驅動」與「無伺服器運算」的應用場景,並透過實戰加深對 AWS 雲端資源的操作技巧。

完成這一挑戰後,玩家將能駕馭更具複雜性的架構設計,邁向更高階的雲端應用場景!

相關參考資料

如果想知道更多雲端新知,加入我們LINE@官方號

感謝您的填寫,將有專人與您聯繫