在 AWS Athena 中清理 SQL 查询参数
Posted
技术标签:
【中文标题】在 AWS Athena 中清理 SQL 查询参数【英文标题】:Sanitizing SQL query parameters in AWS Athena 【发布时间】:2018-07-25 11:04:09 【问题描述】:在 AWS Athena 中,似乎没有将参数传递到 SQL 查询的好方法。典型的执行方式是从boto3
call,
response = client.start_query_execution(
QueryString='string',
ClientRequestToken='string',
QueryExecutionContext=
'Database': 'string'
,
ResultConfiguration=
'OutputLocation': 'string',
'EncryptionConfiguration':
'EncryptionOption': 'SSE_S3'|'SSE_KMS'|'CSE_KMS',
'KmsKey': 'string'
)
如果我需要将参数传递给 QueryString,我需要对其进行清理以避免注入攻击。如何清理输入?
【问题讨论】:
致那些关闭它的人——请解释原因。这似乎完全合法。 这能回答你的问题吗? How to solve SQL injection for Athena? 【参考方案1】:Athena API 中没有这样的功能。Athena 现在有prepared statements。
【讨论】:
以上是关于在 AWS Athena 中清理 SQL 查询参数的主要内容,如果未能解决你的问题,请参考以下文章
AWS Athena (Presto) DISTINCT SQL 查询中的重复结果?
Spark SQL 查询以获取在 AWS S3 中存储为 CSV 的 Athena 表的最后更新时间戳