【每周快報】0725-0803 AWS 服務更新
前言
AWS 於七月底時推出以機器學習為基礎的 Amazon Fraud Detection,可以協助偵測網路詐騙,即便不具有機器學習的相關知識,也能輕鬆使用這項服務。除了推出新服務協助使用者防詐,AWS 也對本身的安全控制做了許多加強,現在 AWS Security Hub 新增了 7 種自動安全控制,讓使用者可以更快速且有組織性的瞭解 AWS 帳戶的安全狀況。
本次新聞也會跟大家分享 AWS Database Migration Service、AWS Firewall Manager、Amazon Elastic Container Registry…等不同領域服務,所新增的支援以及改善。
焦點新聞
Amazon Fraud Detector 正式 GA
隨著科技日新月異發展之下,詐騙或惡意的行為也層出不窮,為了要降低詐騙的風險,AWS 在 2019 年時發佈 Amazon Fraud Detector,這是一個可以識別潛在詐欺性活動的服務,透過機器學習再加上 Amazon.com
20 年的詐欺檢測專業知識,讓使用者可以不需具備機器學習相關知識便能快速的進行詐欺檢測。
使用者只需要上傳使用者過去詐欺和正常交易的歷史資料,並選擇 ML 模型 Template,即可實現詐欺風險預測的解決方案。
此次更新後,Amazon Fraud Detector 正式 GA,可以透過訓練好的模型,部署到檢測應用程式裡,再自行配置檢測邏輯規則,以協助使用者去預測線上支付詐騙、假帳戶註冊⋯等惡意行為。
參考來源至:Detect fraud faster using machine learning with Amazon Fraud Detector – now generally available
Amazon ECS Fargate 支援使用 NLB 對 UDP 流量做負載平衡
Network Load Balancers 是一個針對 OSI 第四層(傳輸層 connection layer)運作的負載平衡。
在發布這項更新之前,我們只能在 ECS Fargate 上的 NLB 處理 TCP 協定的負載平衡,有了這項更新,我們可以輕鬆的在 ECS Fargate 上部署 UDP 協定的無伺服器應用程式。
借助 NLB,我們可以將 UDP 流量分流到 ECS Fargate 上運行的應用程式,例如:DNS 伺服器,IoT 服務,系統日誌之類的工作負載。
這個基於 UDP 協定的應用程式使用 Fargate 執行兩項 container,一個是 rsyslog
container,將 EC2 Instance 系統日誌收集之後寫入 EFS 內,另一個是 Nginx
container ,這個 container 會回應來自 NLB 的健康檢查。
使用者會需要準備以下的需求以進行部署: * AWS CLI * 含有兩個子網路的VPC * Security groups for Fargate tasks * EFS volume
透過以下語法進行 Network Load Balancer 進行部署:
“`bash= aws elbv2 create-load-balancer –name UDPLab-SyslogNLB \ –type network \ –scheme internal \ –subnets $MYSUBNET1 $MYSUBNET2
Store the NLB ARN in an environment variable
SyslogNLB=$(aws elbv2 describe-load-balancers \ –name UDPLab-SyslogNLB \ –query “LoadBalancers[*].LoadBalancerArn” \ –output text)
<br />部署 NLB 的 Target group,協定設置為 UDP,連接埠為514 (syslog):
```bash=
aws elbv2 create-target-group --name UDPLab-SyslogTG\
--protocol UDP \
--port 514 \
--target-type ip \
--health-check-protocol TCP \
--health-check-port 80 \
--vpc-id $MYVPC
# Store the Target Group in an environment variable
SyslogTG=$(aws elbv2 describe-target-groups \
--name UDPLab-SyslogTG \
--query "TargetGroups[*].TargetGroupArn" \
--output text)
建立 NLB listener,使用 UDP 和連接埠檢查連接請求,這個規則決定了 NLB 如何將請求路由到一個或多個目標,在這項範例內,listener 會監聽 514 port。 “`bash= aws elbv2 create-listener \ –load-balancer-arn $SyslogNLB \ –protocol UDP \ –port 514 \ –default-actions \ Type=forward,TargetGroupArn=$SyslogTG
<br />在平台版本1.4上提供了透過 NLB 對 Fargate UDP 協定的支援。
> 參考來源至:[AWS Fargate for Amazon ECS now supports UDP load balancing with Network Load Balancer](https://aws.amazon.com/about-aws/whats-new/2020/07/aws-fargate-for-amazon-ecs-now-supports-udp-load-balancing-with-network-load-balancer/)
# 其他服務更新
## Amazon ECS 支援用 CloudFormation 掛載 EFS 在 Container 上
在今年 4 月 Amazon ECS 及 Fargate 支援在 Container 上 Attach EFS,不僅解決了像是 WordPress、JIRA、Jupyter Notebook⋯等會需要同時多個 Tasks 或是 Containers 以 File Sharing 形式同時存取的需求,搭配 Fargate 更可以抽象掉底層 Container Hosts,讓使用者更專注在 Container Application、核心事業的開發。
此次更新後,不僅可以透過 AWS Console 去 Mount EFS,也能直接透過 CloudFormation Template 直接自動化部署。
使用者可以透過以下範例語法進行部署:
**JSON**
```json
{
"DockerVolumeConfiguration" : DockerVolumeConfiguration,
"EFSVolumeConfiguration" : EFSVolumeConfiguration,
"Host" : HostVolumeProperties,
"Name" : String
}
YAML
DockerVolumeConfiguration:
DockerVolumeConfiguration
EFSVolumeConfiguration:
EFSVolumeConfiguration
Host:
HostVolumeProperties
Name: String
參考來源至:Amazon ECS announces CloudFormation support for Amazon EFS volumes
Amazon S3 釋出專門在 Visual Studio code 上使用的 AWS Toolkits
AWS Toolkit for Visual Studio Code 是一套在 Visual Studio Code 上開源的套件,可以建立、偵錯及部署應用程式在 AWS 上。藉著使用 AWS Toolkit for Visual Studio Code,我們可以方便、快速地利用 Visual Studio Code 在 AWS 上建立應用程式。
現在我們可以透過在 Visual Studio Code 中的 AWS Explorer View 去建立、讀取、更新、刪除所有在 S3 中的資源。S3 整合了以上的內容,使用者僅需要透過 Visual Studio Code 的介面就能訪問 S3 中的 Buckets 及 Bucket 中的所有資源,可加速使用者開發在 AWS 上的應用程式。
參考來源至:Amazon S3 features now available in the AWS Toolkits for Visual Studio Code
Amazon Elasticsearch 現在可以串接至 Tableau 及 Microsoft Excel
Amazon Elasticsearch 現在能夠連接至 Tableau 及 Microsoft Excel。
使用者可以使用 Tableau 連接至 Amazon Elasticsearch 服務中,此次更新後,可利用 Amazon Elasticsearch 所獲得的搜尋結果建立複雜的可視化圖表。
與 Tableau 相同的是,我們也可以將 Microsoft Excel 連接上 Amazon Elasticsearch 服務,接著我們可以透過 Microsoft Excel 對 Amazon Elasticsearch 所獲得的資訊做更深入的分析。
透過 Excel 的整合,我們可以使用進階功能,像是 Power Query、BI 商業智慧化,從 Excel 選擇需要的格式,像是 CSV,並匯出搜尋結果。
參考來源至:Amazon Elasticsearch Service now supports integration with Tableau and Microsoft Excel
Amazon Elastic Container Registry (ECR) 現在支援使用 AWS KMS keys 來加密 images
以往在預設的情況下,每一個推送到 ECR 存放的 images 都會使用 industry-standard AES-256 演算法進行加密,保護靜態數據。但仍有使用者期望可以用不同的方式來加密,此次更新後,使用者現在可以選擇使用一個 AWS 託管或使用者自己管理的 CMK 作為加密的金鑰,來加密靜態 images。
而這一個功能也讓使用者能夠符合 PCI-DSS 合規性要求,針對物件的存放與加密是分別的進行認證,也就是說要能夠要能夠取得 image 需要進行解密的認證,而要取得解密的金鑰,也會另外認證使用者的身份使否可以取用。透過 KMS 對金鑰的管理,可以幫助使用者更加安全的管理自己的 images。
啟用此功能後,在推送至 ECR 時,會自動使用 CMK 加密使用者的 images,在拉取時會對其進行解密。
使用者現在只要在啟用 ECR repository 的時候,透過 AWS console 或 AWS CLI 啟用 KMS encryption 功能即可。
參考來源至:ECR now supports encryption of images using AWS KMS keys
AWS Security Hub 新增多種自動安全控制
AWS Security Hub 是一個提供使用者全面了解整個 AWS 帳戶的安全狀況,有了Security Hub,使用者現在可以在一個地方匯總,組織和排列來自多個 AWS 服務的安全警報。
AWS Security Hub 發布了 7 種自動化安全控制:
- Amazon S3 Bucket 要求使用 Secure Socket Layer 的請求
- Amazon SageMaker notebook instances 不應具有訪問 Internet 權限
- AWS Database Migration Service 複製實例不應該是公開的
- 由 Systems Manager 所託管的 Amazon EC2 Instance 的合規性狀態應該為 COMPLIANT
- 與 Load balancer 連接的 AWS Auto scaling groups 應使用Load balancer Health Check
- 在指定的時間後,應刪除已停止的 EC2 Instance
- 在所有 VPC 中啟用Amazon VPC Flow logs
及新增符合 PCI-DSS 安全標準的 12 個自動安全控制。
參考來源至:AWS Security Hub launches new automated security controls
Amazon Kinesis Data Firehose 現在支援將串流數據傳送 3 個平台及 HTTP Endpoint
Amazon Kinesis Data Firehose 是一個可以將串流數據傳送至資料湖、資料儲存及分析的服務,且可以轉換串流數據傳送到 Amazon S3、Amazon Redshift、Amazon Elasticsearch Service。此次更新後,可將串流數據傳送到 MongoDB、Datadog、New Relic 及 HTTP Endpoint,讓使用者能夠使用完全託管的服務,將數據傳輸到這些目的地,而無需構建應用程序或擔心操作和管理數據交付基礎結構,讓即時分析變得更加方便、容易。
現在開始使用者可以透過 AWS Console、AWS CLI 或 AWS SDK 建置。 首先進到 Kinesis Console,選擇 Create delivery stream 。
接下來輸入好 Delivery stream name,在 Choose a source 下,選擇 Direct PUT or other sources。
完成後續的細節設定後,使用者可以在 Destination 部分,看到幾個選項,在這裡選擇 HTTP Endpoint。
然後輸入 HTTP endpoint name 及貼上 endpoint URL,再繼續完成後續的細節設定,即完成,也可以利用 CloudWatch 監控 delivery 的狀況,CloudWatch 提供兩個 Metric — Delivery to HTTP Endpoint data freshness 和 HTTP Endpoint delivery success。
參考來源至:Amazon Kinesis Data Firehose now supports data delivery to HTTP endpoints、Amazon Kinesis Data Firehose now supports data delivery to Datadog 、Amazon Kinesis Data Firehose now supports data delivery to New Relic、Amazon Kinesis Data Firehose now supports data delivery to MongoDB Cloud、Stream data to an HTTP endpoint with Amazon Kinesis Data Firehose
AWS Firewall Manager 支援集中 AWS WAF log 紀錄
AWS Firewall Manager 是一款提供客戶可以在 AWS Organization 裡做跨帳戶、資源及防火牆規則集中管理的一款服務,使用者可以透過此服務,集中管理 AWS WAF、AWS Shield Advanced 及 VPC Security Group,確保所有帳戶及資源都能保有合規性,此次更新後,可以透過 FMS Policy 在 AWS WAF Web ACL 集中所有 log 紀錄,將所有的記錄集中在同一個帳戶底下,背後是透過 Kinesis Data Firehose 將資料傳遞到目標地,在這 log 紀錄裡,使用者可以看到 Timestamp、AWS 資源名稱、AWS WAF 採取的動作及其他詳細訊息等,以方便集中做稽核管理。
參考來源至:AWS Firewall Manager now supports centralized logging of AWS WAF logs
AWS Database Migration Service 現在支援增強版 premigration assessments(預先評估)
Amazon DMS 能夠幫助使用者快速、簡單的遷移現有的資料庫至 AWS 平台上;抑或是幫助轉換不同 Engine 的資料庫,例如:MySQL 轉換至 Oracle。此次更新後,在 DMS 正式開始遷移資料庫之前,使用者可以利用增強版的 premigration assessments,進行預先的評估,評估搬遷至新的資料庫是否會發生一些潛在問題,像是資料類型衝突或是效能差異等等。避免在遷移之後才發覺不相容的情況,導致需要修改之後再重新遷移的問題。
參考來源至:AWS Database Migration Service now supports enhanced premigration assessments
AWS CodeBuild 現在支援並行且協調地執行構建項目
當開發者利用 CodeBuild 來建立需要的 project 的時候,經常會遇到一種情況:在建構專案時,如果使用者想要同時建構多個 build 的動作時,需要將 build 拆分成多個 project 或是透過 Step Function 結合 Lambda 將多個 build executions 串接在一起,以達成目的。
此次更新後,面對上述的場景,使用者不需要再另外建構 Lambda 或是 Step Function,而是可以直接利用 CodeBuild 新支援「並行處理」的功能,以「批次」的方式,在一個 project 中執行多個 build executions,進而提高開發者的效率。
參考來源至:AWS CodeBuild now supports parallel and coordinated executions of a build project
Tag:Amazon ECS, Amazon ECS Fargate, Amazon Elastic Container Registry, Amazon Elasticsearch, Amazon Fraud Detector, Amazon Kinesis Data Firehose, Amazon S3, AWS CodeBuild, AWS Database Migration Service, AWS Firewall Manager, AWS KMS keys, AWS Security Hub, AWS Toolkits, AWS WAF log, CloudFormation, Container, ECR, EFS, GA, HTTP Endpoint, images, Microsoft Excel, Network Load Balancers, NLB, premigration assessments, Tableau, UDP, Visual Studio Code