Aws lambda 如何从AWS Lambda授权人处返回401(“未经授权”)

Aws lambda 如何从AWS Lambda授权人处返回401(“未经授权”),aws-lambda,aws-api-gateway,lambda-authorizer,Aws Lambda,Aws Api Gateway,Lambda Authorizer,我们正在使用AWS Lambda Authorizer和API网关来保护我们的下游API 下面是我们基于Java的lambda授权程序的代码片段 Statement statement = Statement.builder() .resource(input.getMethodArn()).effect(effect) .build(); PolicyDocument policyDocument = PolicyDocument.bu

我们正在使用AWS Lambda Authorizer和API网关来保护我们的下游API

下面是我们基于Java的lambda授权程序的代码片段

Statement statement = Statement.builder()
            .resource(input.getMethodArn()).effect(effect)
            .build();

    PolicyDocument policyDocument = PolicyDocument.builder()
            .statements(
                    Collections.singletonList(statement)
            ).build();

    return AuthorizerResponse.builder()
            .principalId(userId)
            .policyDocument(policyDocument)
            .context(ctx)
            .build();
  • 使用正确的令牌(effect=“Allow”):从API获取正确的API响应

  • 使用不正确的令牌(effect=“Deny”)获取403 HTTP响应代码


  • 我们需要401(“未经授权”)作为回应,有人可以帮助如何做到这一点吗?我们使用java编写了lambda authorizer。

    尝试抛出一个异常,并显示一条消息“Unauthorized”