EC2 不能 0.0.0.0/0 說多痛就有多痛

身為一個 PHP Developer,開了一台 ec2 instance,當然馬上就是進去:

有時為了資安,所以 outbound 再也單純設成 0.0.0.0/0,而本篇文章是記錄我想的到的解法

2022/6/18:調整關於 Lambda 維護 Prefix List 的描述

Read More »

Cognito User Pool的initiateAuth() 不支援自訂scope

最近公司某專案因為要讓 C# client 接上 Cognito,不過在 OAuth2 的 redirect 有困難,
所以我又想試試看讓 C# client 透過 AWS SDK 的 cognito.initiateAuth() 讓使用者做登入。

我是用 Vue.js 來寫 POC,
登入成功之後發現拿到的 access_token 的 scope 只有 aws.congito.signin.user.admin 一個。
這個 bug 會讓我們的 access_token 無法通過 API Gateway 的 JWT Authorizer 認証。

這個情況在 AWS Cognito AdminInitiateAuth all custom scopes are missing 這篇文章也有提到,
另外在 Custom scopes in access token programmatically #684 這篇有人在向 AWS 許願可以讓 initiateAuth() 支援自訂 scope。
這篇留言提到可以用 Pre token generation 修改 ID token 的內容,well…

Cognito 跟 AppSync 在充滿 roadblock 的部份實在是很像…

VPC中的Lambda存取網路上的服務

今天確定了這個事情:

當 Lambda 放在 VPC 裡面,就無法直接存取網路上的服務。
如果要能存取,可以設定 NAT Gateway 或 NAT instance;
而如果你要存取的只有 AWS 的服務,可以只開 VPC endpoint。

可以參考 如何為連接到 Amazon VPC 的 Lambda 函數提供網際網路存取權限?


murmur

雖然用 Lambda 處理 scaling 很方便也很 cost-efficient,
但當要存取這麼多透過 internet 連線的服務時,
就要把建立 NAT Gateway 或 VPC endpoint 的價錢考慮進去。

當然,如果不考慮錢的話當然是開爆XD
因為同樣是處理 scaling,用ALB + EC2 + Auto scaling group 真的就是比較麻煩阿