是否有可能在后端 lambda 函数中获取为 api 网关配置的 api 密钥
Is it possible to get a hand on api key configured for a api gateway inside the backend lambda function
我需要记录用于调用 api 网关 url 的 api 密钥,后者又会调用后端 lambda。我已经使用几个 api 密钥配置了 api 网关。我现在需要的是从 lambda 函数内部记录 api 键。
有没有办法让 api 密钥 ID 或 api 密钥名称对 lambda 函数可见?
遗憾的是,您无法从请求对象中直接获取名称。但是可以通过get_api_keys进行反向查找。因此,您可能必须使用 get_api_keys
在您的 lambda 中获取 api 键的列表,并迭代它们直到找到匹配项。
根据您的使用模式和密钥数量,此类查找可能非常耗时且不受欢迎。因此,您还可以将密钥 ID 和相应的密钥名称存储在,例如DynamoDb。这将允许根据密钥 ID 高效查找密钥名称。
我使用的是圣杯应用程序。所以我能够使用 app.current_request.to_dict()
解决这个问题
它拥有我需要的所有数据。
更多信息请参考:chalice rest api
我需要记录用于调用 api 网关 url 的 api 密钥,后者又会调用后端 lambda。我已经使用几个 api 密钥配置了 api 网关。我现在需要的是从 lambda 函数内部记录 api 键。
有没有办法让 api 密钥 ID 或 api 密钥名称对 lambda 函数可见?
遗憾的是,您无法从请求对象中直接获取名称。但是可以通过get_api_keys进行反向查找。因此,您可能必须使用 get_api_keys
在您的 lambda 中获取 api 键的列表,并迭代它们直到找到匹配项。
根据您的使用模式和密钥数量,此类查找可能非常耗时且不受欢迎。因此,您还可以将密钥 ID 和相应的密钥名称存储在,例如DynamoDb。这将允许根据密钥 ID 高效查找密钥名称。
我使用的是圣杯应用程序。所以我能够使用 app.current_request.to_dict()
解决这个问题
它拥有我需要的所有数据。
更多信息请参考:chalice rest api