一位开发人员正在调试一个应用程序,该应用程序使用了多个 Lambda 函数,这些函数调用了由 API Gateway 暴露的 API。API Gateway 方法使用 Amazon Cognito 授权方。Lambda 函数在调用 API 时,在 Authorization 标头中包含了用户 ID。所有对 API 的 GET 请求都返回 HTTP 403。开发人员如何解决这个问题?
选择一个答案
点击一个选项来检查您的答案。
正确答案: 更改客户端 GET 请求,使其在 Authorization 标头中包含有效的 Cognito 身份验证令牌。.
为什么这是答案
当 API Gateway 方法使用 Amazon Cognito 授权方时,客户端必须在 Authorization 标头中提供一个有效的 Cognito 身份验证令牌(例如 ID 令牌或访问令牌),而不是用户 ID 或 API 密钥。HTTP 403 错误表示未经授权的访问,这通常是因为提供的凭证无效或缺失。 选项 A 错误,因为 API 密钥用于 API 使用计划和限制,而不是作为 Cognito 授权方的身份验证凭证。 选项 C 错误,API Gateway 资源策略用于控制对 API 的访问,但如果授权方配置为 Cognito,则需要有效的 Cognito 令牌进行身份验证。 选项 D 错误,OPTIONS 预检请求与 CORS(跨域资源共享)相关,用于检查服务器是否允许实际请求,与授权失败的 403 错误无关。
通过考试 — 无需无休止地寻找答案
将本次考试的所有验证问题和解释集中在一处,节省数小时的准备时间。1,000+ 认证 · 20+ 语言 · 免费开始。
更快通过考试 → 无需银行卡