【每周快報】0326-0401 AWS 服務更新
前言
隨著資安問題日趨重要,AWS 這周推出了 Amazon Detective,讓使用者快速找出潛在安全問題以及可疑活動的來源。AWS Storage Gateway 也新增了針對 File Gateway 的 audit logs,幫助管理者監控使用者存取檔案的狀況,以避免敏感性資料被不當使用。
另外為因應疫情,許多公司開始實施 WFH 的政策,Amazon Chime 在此也顯得特別重要。這是一款遠端會議及撥打電話的服務,讓使用者隨時保持連線狀態,而且只需簡單幾個步驟就能完成。AWS 也宣布在 2020 年 6 月 30 日前,使用者只要透過其 AWS 帳戶首次開始使用 Amazon Chime,AWS 將免費提供所有 Amazon Chime Pro 的線上會議和視訊會議功能,為許多企業及學校帶來了很大的幫助!
除上述服務,AWS 這周也對查詢功能做了些增強,像是 Amazon Managed Cassandra 現在支援 Tag 功能,Amazon Redshift 也新增支援 sort keys 查詢,大幅提升了查資料的速度。本篇新聞也會提到 AWS App Mesh、Amazon FSx… 等不同服務的更新!
一、新服務
Amazon Detective
在越來越多資安威脅下,許多企業開始注重資安,為了要防範被惡意攻擊,除了要思考如何找出潛在的安全性問題,還需要找出安全性問題的來源為何,但往往找出導致安全性問題的原因需要很多時間,因為我們必須稽核來自不同來源的 log ,將 log 數據透過 ETL 萃取出核心的數據之後,資安人員才能開始分析數據,為了解決這個問題, AWS 宣布新的服務-AWS Detective ,是一款可以快速識別及調查潛在安全問題及可疑活動的來源,自動從 AWS 資源中收集 log,例如:VPC Flow logs、AWS CloudTrail 及 Amazon GuardDuty ,使用機器學習、統計分析來建構一組數據,讓使用者進行更快,更有效的安全稽核。
二、服務的新功能
AWS Storage Gateway 新支援針對 File Gateway 的 audit logs 以幫助企業增強合規性
針對現行使用混合雲的企業,可以利用 File Gateway 來延伸本地端儲存空間至雲端,但將資料搬遷至雲端後,為符合國家、企業、組織的規範,管理者開始需要監控使用者存取檔案的狀況,以避免敏感性資料的不當使用。此次更新之後,管理者可以啟用 SMB file shares 的 logging 功能,了解使用者存取的狀況。
- 以下範例為 “create file” 行為的紀錄:
{
"sourceAddress": "XXX.XXX.XXX.XXX",
"accountDomain": "EC2",
"accountName": "Admin",
"groupId": "XXXXX",
"source": "share-XXXXXXXX",
"type": "FileSystemAudit",
"ownerId": "XXXXX",
"accessMode": "0777",
"mtime": "1584903101747582202",
"version": "1.0",
"objectType": "File",
"bucket": "s3-bucket-1",
"objectName": "/topfolder/tests/iteration-1/integtest.01",
"ctime": "1584903101747582202",
"fileSizeInBytes": "0",
"shareName": "my-fileshare-name",
"operation": "Create",
"gateway": "sgw-XXXXXXXX",
"timestamp": "1584903101751",
"status": "Success"
}
這些 Audit Log 紀錄會被推送到 CloudWatch Log 做儲存,往後管理者可根據自身需求運用 CloudWatch Logs Insights、Amazon Athena、Amazon Elasticsearch Service,或是第三方軟體來做更多分析的行為,管理者可另外設置 CloudWatch Alarm,一旦偵測到特定 Log 紀錄便觸發 Alarm 通知,有助於錯誤偵測及追蹤潛在威脅。
- 如何使用:
從 AWS Console 可直接啟用。
- 啟用之後,會在 Description 中看到 Audit Log 的位置。
參考來源至:AWS Storage Gateway adds audit logs for File Gateway to address enterprise compliance requirements
Amazon DocumentDB(僅適用 MongoDB 類型)新支援以 Role 為基礎的權限控管方式(Role-Based Access Control)
在 AWS IAM 中,使用者可依據不同部門、單位、產品、服務或者是功能,各自創建符合需求的 IAM User 或 IAM Role,並遵照 AWS Best Practice 之一:Grant Least Privilege,賦予最小權限至該 IAM User/Role,使該身分具有剛好可以完成 Job Functions 的權限。
上述模式稱為 Role-based access control (RBAC),在管理上時常搭配最小權限原則、IAM Policy 和 Tags,在 Policy 中制定 IAM 身份可針對不同 AWS Resources 的操作行為。因此當管理者想改動該身份的權限時,便要修改 IAM Policy 內容。更多與 RBAC 相關內容,請參考 eCloudture 先前的 Blog 文章:透過 AWS Tags 實作 Attribute-Based Access Control (ABAC)
此次更新之後,Amazon DocumentDB 利用以下 Component 來實現 RBAC 概念:
- User:被授與權限的終端使用者
- Password:認證該使用者時要使用的密碼
- Role:實際使用者可對 database 做什麼樣的操作行為
- Admin Database:授權使用者的管理型資料庫
- Database (DB):權限中制定可操作的資料庫
實作案例:
- 在此案例中,所有被授與權限的 User 記錄都會記錄在 Admin 的 database 中,並分別授與不同使用者對不同的資料庫(db)具有不同的權限(role)
db.createUser( { user: "appAdmin", pwd: "abc123", roles: [{"db":"admin", "role":"dbAdminAnyDatabase" }, {"db":"admin", "role":"readWriteAnyDatabase"}, {"db":"admin", "role":"clusterAdmin"}]})
db.createUser( { user: "appUser", pwd: "abc124", roles: [ { role: "readWrite", db: "products"}]})
db.createUser( { user: "analytics", pwd: "abc125", roles: [ { role: "read", db: "products"}]})
- 在另一案例中,管理者在同一個 Cluster 中具有多個 database,需要依據使用者的權限不同,給予對不同 database 的操作權限。
db.createUser( { user: "bigCowAdmin", pwd: "abc123", roles: [ { role: "dbOwner", db: "bigCow"}]})
db.createUser( { user: "raceCarAdmin", pwd: "def456", roles: [ { role: "dbOwner", db: "raceCar"}]})
db.createUser( { user: "xQuestAdmin", pwd: "ghi789", roles: [ { role: "dbOwner", db: "xQuest"}]})
db.createUser( { user: "bounceAdmin", pwd: "jkl012", roles: [ { role: "dbOwner", db: "bounce"}]})
參考來源至:Amazon DocumentDB (with MongoDB compatibility) Adds Support for Role-Based Access Control
三、功能的增強或改動
Amazon Redshift 提升查詢的效能
現在開始 Amazon Redshift Advisor 支援 sort keys 進行查詢,大幅提升查詢資料的速度,除此之外可以透過 ALTER TABLE
指令增加或修改 sort keys,當資料載入 Table 後,資料就會依照 sort keys 的排序載入,當修改 sort keys 時,Amazon Redshift 會重新排列資料,不必再新增 Table,且不會影響同時讀寫的效能。
注意:每張 Table 僅能定義 400 個 sort keys 資料欄。
參考來源:Amazon Redshift now recommends sort keys for improved query performance
AWS App Mesh 現在支援共用同一個 Mesh 於多個 AWS 帳戶
使用者經常因為考量到安全性或是成本單位的區隔,將容器化服務部署於多個 AWS 帳戶,但同時希望在邏輯層面,可以利用 Service Mesh 來讓應用程式可以由統一的端點來對外的連線,或是跨帳號的對內溝通。App Mesh 便是利用 Envoy 此開源軟體來實作統一管理服務間連結的功能。更多 App Mesh 實作方式請參考官方部落。
此次更新之後,使用者可以將同一個 AWS App Mesh instances 共享於同一個 AWS Organization 內的多個 AWS 帳戶,讓與應用程式相關連的容器化服務皆可以互相連結。此功能保留在實際面上的分割,同時增加邏輯上的整合。
參考來源至:AWS App Mesh adds support to connect services deployed in multiple AWS accounts into a shared mesh
Amazon FSx 推出新的文件儲存類型
Amazon FSx 是提供 Windows Server 的檔案系統,以往 AWS 只有提供 SSD 的存儲類型,較適合追求延遲性較低的工作負載,像是資料庫、資料分析。此次更新後多了一個存儲選項-HDD,HDD 適合各種工作負載,包括主目錄,使用者和部門之間共享檔案。
當你在創建 File System 時,可以從 Console 中選擇 HDD 的選項:
注意:單可用區 HDD 存儲的定價為每月每 GB 0.013美元,多可用區 HDD 存儲的定價為每月每 GB 0.025美元。
如果現有的 SSD File System 想要轉換成 HDD 存儲型態時,可以先新增一個 HDD File System,然後使用 AWS DataSync 或是 robocopy 移動檔案。
在性能方面,還可以選擇吞吐量的大小:
HDD 存儲類型能為企業大幅降低使用成本。
Amazon Chime meetings 調整參與人數限制
全球遇逢疫情的關係,許多企業都採取 WFH 的方式降低群聚的機會,遠端 Meeting 成了最近話題十足的科技,Amazon Chime 是一款遠端會議、聊天和撥打商務電話的服務,且能運用在各種裝置上,讓使用者隨時保持連線狀態,為了要讓更多人能夠參與遠端會議,這次更新後,只要是具有 Amazon Chime Pro 使用者主持會議,參與人數可達到 250 位,非常適合需要舉辦研討會或大型會議的企業或組織,且不需額外再收費,除此之外,為了維持大型會議的品質,開會人數達 25 人以上,參與者加入會議時預設狀況下會調整成靜音模式,使得主持人及參與者更專注於會議內容及工作。
參考來源至:All Amazon Chime meetings now support up to 250 attendees
Amazon Managed Cassandra 支援 Tag 功能
此次更新後,Cassandra 所有的資源都可以透過 Console 、Cassandra 查詢語言及 CLI 對資源上 Tag,除了針對用途、環境或是其他條件來定義標籤,也可以從 AWS Cost Explorer 針對 Tag 來去查找有標籤分類的帳單,幫助使用者在查詢識別,同時成本控管也有所助益。
使用者現在可以利用 AWS organization 統一管理非組織內的意外操作行為
此次更新之後,組織管理者可以啟用 AWS Identity and Access Management (IAM) Access Analyzer 來統一管理 Organization 裡的帳戶,有助於管理者可以快速了解非組織內部人員對資源的操作行為。透過優先設置對資源存取的 Policy,並套用至所有組織內的帳戶,主動防治意外的操作行為。
The AWS Toolkit for Visual Studio Code 現在支援 AWS Step Functions
此次更新之後,對於 Visual Studio Code 使用者來說,可以不用切換到 AWS Console 才能看到 AWS Step Functions Workflow 各階段的 State,可以直接透過編譯器即時看到狀態,加速並簡化開發過程。
參考來源至:The AWS Toolkit for Visual Studio Code now supports AWS Step Functions
Tag:Amazon Chime meetings, Amazon Detective, Amazon DocumentDB, Amazon FSx, Amazon GuardDuty, Amazon Managed Cassandra, Amazon Redshift, audit logs, AWS App Mesh, AWS CloudTrail, AWS Organization, AWS Step Functions, AWS Storage Gateway, ETL, File Gateway, IAM Role, log, MongoDB, Role-Based Access Control, Tag, The AWS Toolkit for Visual Studio Code, VPC Flow logs