mysql - 当我们连接到 MS SQL/MySQL 数据库时,如何确保我和客户的 PC 始终具有相同的 IP 地址?
问题描述
我已阅读通过仅允许预定义的 IP 地址列表/范围来限制对数据库服务器的访问是一种很好的安全做法。我不知道如何保证/确保我的 IP 地址保持不变,因为它始终是通过 DHCP 分配的。我想网站访问者也是如此。
我的项目通常有两类用户:公司员工和公众。公司员工通过 MS Access 前端连接到数据库,而公众/客户将通过网站连接。
如何实施限制允许的 IP 地址的良好做法,同时确保每个人都可以连接?
以 IMDB 或 DHL 为例。他们如何绕过网站访问者的这种“限制”?
因为我不知道如何确保这一点,所以我总是将 Azure 或 AWS 上的 MS SQL Server 设置为允许所有 IP 地址。我已经读到 MySQL 甚至不允许这样做,所以我无法使用大多数网络托管包提供的免费 MySQL 数据库托管。有一些像 HostGator 这样的 web 主机坚持作为本地主机连接到 MySQL db,甚至指定必须用于连接到 MySQL db 的 IP 地址。我不知道该怎么做。这就是我一直在使用 MS SQL Server 的原因。
解决方案
我不知道如何保证/确保我的 IP 地址保持不变,因为它始终是通过 DHCP 分配的。我想网站访问者也是如此。
除了IP限制外,不要暴露SQL Server端的所有端口,只开放SQL端口,限制用户加入Builtin\administrators
SQL Server组。
很难限制客户端 IP 地址(甚至是内部 IP 地址),相反,您可以配置 VLAN,以便只有属于该 VLAN 的用户才能访问数据库服务。在您的情况下,内部用户和 Web 服务器必须在同一个 VLAN 中。
如何实施限制允许的 IP 地址的良好做法,同时确保每个人都可以连接?
推荐阅读
- python - 保存图形时 Matplotlib 未正确显示直方图
- c# - 写入位置访问冲突,线程之间共享变量
- arangodb - ArangoDB AQL:查找顺序数据中的差距
- azure - Azure Monitor 是否将警报发布到 RSS 源或消息队列或主题?我们可以创建一个订阅模型来自己接收警报吗?
- flutter - 在 Flutter 中点击图标时如何打印出图标名称
- tcl - Eggdrop 上带有 API 的 Youtube 脚本未显示正确的字符集
- amazon-s3 - Redshift External Table 所有字段为空
- c - 我不知道如何编写关于金字塔的 C 代码
- apache-kafka - 如何重命名/替换 Kafka-connect SMT 结构中的字段?
- python - 将另一列添加到现有列表