0
如果我使用AWS Cognito用戶池,可以指定用戶的角色,然後檢查此用戶是否具有特定角色,例如。管理員,在他/她能夠訪問資源之前,例如。 API網關Cognito用戶池的其他授權邏輯用戶
如果我使用AWS Cognito用戶池,可以指定用戶的角色,然後檢查此用戶是否具有特定角色,例如。管理員,在他/她能夠訪問資源之前,例如。 API網關Cognito用戶池的其他授權邏輯用戶
您可以使用組Cognito用戶池,並且用戶在ADMINGROUP定製授權人確認:
if (payload['cognito:groups'] &&
payload['cognito:groups'][0] === 'adminGroup') {
admin = true;
}
這裏的負荷是你的身份令牌得到什麼。如果沒有認知:組,則用戶不在任何組中。
另一種選擇是利用用戶池中的自定義屬性(授權人中的驗證邏輯應與上述邏輯類似)。
其他解決方案也是可能的,但這些解決方案在用戶池外部(例如跟蹤外部數據庫中的用戶角色)。
無論是組還是自定義屬性(或其他解決方案),您都必須驗證自定義授權人中的用戶角色。這樣,請求將在API網關端點之前到達自定義授權人。如果用戶應該是管理員,但他不是(不在adminGroup中或沒有自定義屬性'admin'),則在授權人中發出拒絕策略。
希望這回答你的問題。