我在 AWS 上有一个 SQL Server 实例,通过更改安全组以允许从“任何地方”进行访问,我已将其开放给外部访问。
+-------------+----------+------------+--------------------------+
| Type | Protocol | Port Range | Source |
+-------------+----------+------------+--------------------------+
| MSSQL | TCP | 1433 | Custom 0.0.0.0/0 |
| MSSQL | TCP | 1433 | Custom ::/0 | †
+-------------+----------+------------+--------------------------+
我想限制对此数据库的访问,但不是通过 IP 地址,因为我将用来访问它的服务没有静态 IP。
如何加强对此数据库的入站访问以与外部服务(例如 Firebase 函数或 NodeJS 应用程序)配合使用?
† 在“安全组入站规则”部分中选择“Everywhere”和“MSSQL”时生成的 AWS 安全组规则
最佳答案
据我所知,如果不知道静态 IP 或需要访问 EC2 实例(托管 SQL Server 的位置)的 IP 范围,则无法直接实现此目的。
但是...
您可以将您的实例包含在 API 网关后面,然后为 API 网关中的 API 方法启用 IAM 身份验证。然后使用 IAM 策略(以及资源策略)为 API 用户指定权限。
更多:https://aws.amazon.com/premiumsupport/knowledge-center/iam-authentication-api-gateway/
关于node.js - 限制对 AWS SQL Server 实例的外部访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59474475/