我在 IBM Cloud 上部署了多个 Elasticsearch,并且我希望将这些资源的访问权限限制为仅通过我们业务地点的特定 IP 地址访问的用户。 最有效的方法是什么?
最佳答案
IBM Cloud Databases 现在实现基于上下文的限制 (CBR),它允许您根据包含 IP 地址的上下文限制对资源的访问。
您可以使用 IBM 命令行界面 (CLI) 来完成此操作。
您可以安装 CLI from here您需要添加 CBR 插件:
ibmcloud plugin install cbr
使用以下命令登录 IBM Cloud CLI:
ibmcloud login --sso
按照屏幕上的说明登录。
使用 CBR,第一步是定义一个区域
,其中包括您想要包含或排除的 IP 地址列表。在此示例中,我们将创建一个包含 IP 地址列表的区域。您可以通过键入以下内容来创建区域:
ibmcloud cbr zone-create --name myZone --description "Elastic zone" --addresses 82.11.51.321
...
OK
id 4efe2a60974931fb7a7010b72wsxc4bced
....
下一步是创建一个规则
,将区域绑定(bind)到您想要限制访问的资源。在这种情况下,我们将限制对所有 Elasticsearch 部署的 API 流量的访问。您将需要上一步中的区域 ID 值。
ibmcloud cbr rule-create --enforcement-mode enabled \
--context-attributes "networkZoneId=4efe2a60974931fb7a7010b72wsxc4bced" \
--service-name databases-for-elasticsearch \
--api-types crn:v1:bluemix:public:context-based-restrictions::::api-type:data-plane \
--description "ES Rule"
OK
id d63db5581eebb466d4273adb8e531ece
...
enforcement_mode enabled
规则现已创建并启用。任何并非源自区域列表中的 IP 地址的 API 流量都将被阻止。
有关不同上下文以及如何删除和修改规则和区域的更多信息,请参阅 IBM Cloud Databases documentation
关于database - 如何限制通过 IP 地址访问 IBM Cloud 上的 Elasticsearch 部署?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76372592/