服务器安全性和通过Rest访问OrientDB

问题描述 投票:3回答:2

猜猜这是一个令人尴尬的初学者问题,无论如何......

在“服务器安全性”下的OrientDB文档中,我们发现:

虽然OrientDB Server可以作为常规Web服务器使用,但不建议您将其直接暴露给Internet或公共网络。相反,始终将OrientDB服务器隐藏在专用网络中。

这是否意味着OrientDB用于侦听HTTP连接的端口2480应该只在本地打开但不暴露给外界?

orientdb
2个回答
0
投票

OrientDB HTTP API文档指出您必须使用HTTP Basic身份验证来发出命令。这意味着您必须包含Authorization标头以及您的请求。

以下是一些可能有用的链接,其中讨论了安全问题:

Security concern

security-in-rest-api

OrientDB v2.2非常注重安全性,tt在这个方向上向前迈出了一步(SALTed密码,静态加密(存储上的DES / AES),访问OUSer禁用,服务器控制台上的密码掩码和salted密码也是在服务器中)。


0
投票

您可以使用反向代理从公共Web“隐藏”您的OrientDB服务器。我在AWS AMI Linux机器上。使用httpd我在/etc/httpd/conf.d中创建了一个名为virtualhosts.conf的文件。您如何设置虚拟主机可能取决于您的Linux风格。 virtualhosts.conf的内容:

<VirtualHost *:80>
    LoadModule proxy_module modules/mod_proxy.so
    LoadModule proxy_http_module modules/mod_proxy_http.so
    ServerName orientdb.mydomain.com
    DocumentRoot $ORIENTDBHOME$/www 
    ProxyRequests Off
    ProxyPass / http://127.0.0.1:2480/
    ProxyPassReverse / http://127.0.0.1:2480/
</VirtualHost>

<VirtualHost *:80>
    ServerName www.mydomain.com
    DocumentRoot /var/www
</VirtualHost>

将$ ORIENTDBHOME $替换为OrientDB安装的路径。所以我的子域orientdb(orientdb.mydomain.com)在端口2480转发到OrientDB服务器,但浏览器维护orientdb.mydomain.com URL。我按照说明here,但也为我的主域添加了虚拟主机。

更新:如果您的子域具有SSL证书并且已将其设置为虚拟主机,请在ssl.conf文件中执行相同的代理设置。 (将上面VirtualHost中的最后三行复制/粘贴到SSL的虚拟主机中)。

更新2:您可能甚至不希望将*:80公开给公众,但它是为了演示而显示的。您可能也可以转发到https,但您必须继续寻找该解决方案。

© www.soinside.com 2019 - 2024. All rights reserved.