如何禁用apiDiscovery功能的身份验证要求

时间:2017-02-15 18:48:17

标签: swagger websphere-liberty

有没有办法禁用访问apiDiscovery-1.0功能提供的API文档端点的身份验证要求?

我在Liberty 16.0.0.4上启用了apiDiscovery-1.0功能。

当我按预期访问/ibm/api/explorer时,我能够看到swagger文档,但我需要进行身份验证。

我只能使用basicRegistryserver.xml元素中定义的凭据进行身份验证。但是,我想从我的服务器配置中消除此basicRegistry

2 个答案:

答案 0 :(得分:2)

您可以在最新的Beta(https://developer.ibm.com/wasdev/downloads/liberty-profile-beta/

中执行此操作

使用该驱动程序,您只需要apiDiscovery-1.0(SSL是可选的)。

公共端点的默认地址为http://host:port/api/explorer

您可以更改" / api"通过使用server.xml中apiDiscovery元素中的publicURL属性来分配部分,例如:

<apiDiscovery publicURL="/myPublicAPI" />

这是Liberty的下一个版本17.0.0.1的目标。

请注意,在公共端点中,不会显示内部端点(例如JMX,Batch等) - 仅显示已部署的应用程序。

对于内部端点,您可以使用/ ibm / api / explorer(仍需要SSL和身份验证)。

答案 1 :(得分:1)

我认为出于安全原因,您无法取消apiDiscovery身份验证的要求 我怀疑这有帮助但是,你不应该只能使用我的server.xml中的basicRegistry元素中定义的凭证进行身份验证&#34;而且任何支持的身份验证机制都应该像quickStartSecurity,LDAP等一样工作(它们可以在服务器读取的任何配置文件中设置,而不仅仅是server.xml)。例如,您应该能够在wlp / usr / shared / config中使用quickStartSecurity为/ wlp / usr / servers /目录下的所有服务器应用Admininistrator角色。