amazon-web-services - AWS - 为每个 API 调用常见任务 Lambda
问题描述
我们需要为应用程序编写自定义日志,以捕获诸如谁在何时做了什么等事情。
为此,我们创建了一个 Lambda 以将日志插入 DynamoDb 数据库。每次我们从应用程序的前端调用 API 时,我们都需要从一个公共位置调用这个 Lambda,而不是在每个单独的 lambda 中调用它。
我们尝试在 API 网关授权器中调用它,但它不起作用,因为我们的网关授权器是“令牌”类型。因此,它不接受访问令牌以外的任何其他参数。我们无法将自定义授权方的类型更改为“请求”类型,因为我们需要存在访问令牌才能在 Cognito 中授权用户。问题:是否有任何地方可以调用此 Logs Lambda,以便在调用每个 API 时执行它?
解决方案
尝试使用不同的事件触发器。如果您的 lambda 可以由队列或云端触发,您将不会遇到授权问题。但是,您的应用程序必须承担适当的角色才能使用其中的一些。如果您使用 Java,您可以通过多种方式拦截您的请求,并在处理 API 之前通过 SDK 进行 lambda 调用。需要更多细节来提供整体解决方案。
推荐阅读
- node.js - 如何在 TypeScript 中注释“require express()”返回的实体?
- node.js - 登录后尝试进入选项卡菜单时出错
- laravel - lumen - 如果更改访问 url,护照身份验证会给我未经授权的错误
- excel - VBA代码不起作用并在excel中返回空白值
- android - LinearLayout match_parent 不考虑其他孩子的宽度?
- java - 在 XML 中设置 Apache Camel 中的属性
- ignite - Apache ignite 节点重启时节点数据丢失恢复
- c++ - 分离线程:忙时互斥体被破坏错误C++
- flutter - 当继承模型中的数据方面发生更改时,如何“通知”颤动的 listview.builder
- bash - 如何从变量中删除颜色/样式格式