![](/img/trans.png)
[英]Display something else than username in Cognito Built-In Sign-In Page
[英]Redirect to built-in sign-in page for AWS Cognito user pool
我在具有 1 個 REST 端點的 AWS API Gateway 中創建了一個 API。 REST 端點調用用 C# 編寫的 Lambda 函數。 我還創建了一個 AWS Cognito 用戶池。 我想要做的是將 AWS Cognito 與 AWS Gateway API 集成,以便當未經身份驗證的用戶嘗試調用 REST API 時,API 會將他們重定向到 AWS Cognito 的內置登錄頁面。 目前,我已經將這兩個集成在一起,但是當我嘗試調用 REST API 時,它只是顯示一條未經授權的消息。 我希望它在那時重定向到登錄頁面,而不是顯示該消息。 我已經閱讀了很多 AWS 文檔,但不知道我錯過了什么。 我該怎么做呢?
在來自 Cognito 的未授權響應的情況下,我能夠通過指定一個自定義網關響應來解決它,該網關響應將 302 重定向發送到登錄頁面。 在 Terraform 中,它看起來像這樣:
resource "aws_api_gateway_gateway_response" "unauthorized" {
rest_api_id = "${aws_api_gateway_rest_api.apiGateway.id}"
status_code = "302"
response_type = "UNAUTHORIZED"
response_templates = {
"application/json" = "{'message':$context.error.messageString}"
}
response_parameters = {
"gatewayresponse.header.Location" = "'https://example.com/login'"
}
}
我想出了一個解決方案。 我放棄了我原來的方法,最終這樣做了:
這實現了我一直在尋找的東西。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.