首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >新用户注册选项不会出现在用户界面上

新用户注册选项不会出现在用户界面上
EN

Stack Overflow用户
提问于 2016-05-10 05:07:48
回答 2查看 557关注 0票数 1

我已经安装了在http://www.apiman.io/latest/download.html中定义的api man

我按照指示执行。

代码语言:javascript
复制
mkdir ~/apiman-1.2.5.Final
cd ~/apiman-1.2.5.Final
curl http://download.jboss.org/wildfly/10.0.0.Final/wildfly-10.0.0.Final.zip -o wildfly-10.0.0.Final.zip
curl http://downloads.jboss.org/apiman/1.2.5.Final/apiman-distro-wildfly10-1.2.5.Final-overlay.zip -o apiman-distro-wildfly10-1.2.5.Final-overlay.zip
unzip wildfly-10.0.0.Final.zip
unzip -o apiman-distro-wildfly10-1.2.5.Final-overlay.zip -d wildfly-10.0.0.Final
cd wildfly-10.0.0.Final
./bin/standalone.sh -c standalone-apiman.xml

在此之后,我可以以预定义的管理员身份登录,并创建组织、apis和rest。

但是在登录页面上,新用户注册选项不会出现。在这里,登录页面快照

如何获得新的用户注册选项? .I正在使用apache。以下是缺少的东西

“注册?新用户”选项不来

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-05-19 19:47:25

基本原理

在我们的WildFly发行版中,我们使用Keycloak进行身份管理和auth;它都被卷到一个服务器中,包括apiman的所有组件和密钥披风。但是,Keycloak不能在Tomcat上运行,因此默认情况下,我们的Tomcat快速启动只使用tomcat的内置auth机制(您可以配置它来使用LDAP、JDBC等)。

所以,如果你想要密钥披风加上apiman,你需要做一些额外的工作。然而,这带来了很多功能,因此对于真正的部署来说,这可能是值得的。

请记住,这是轻描淡写的描述,但实际上是相当快的实现。

当然,仅仅使用WildFly全局性可能会减少一些麻烦,特别是对于快速测试:-)。

我将很快将其添加到apiman文档中。

键盘斗篷IDM与apiman在Tomcat上的应用

使密钥披风运行

  • 下载密钥披风,快跑。创建管理用户并登录。
  • 导入apiman Keycloak领域。这只是一个演示演练,您需要重新生成用于生产的密钥和秘密 :-)。
  • 对于客户机apimanapimanui,将有效的重定向URI修改为apiman实例(例如http://myapiman.url:8080/apimanui/*)的绝对URL。

准备Tomcat

通用指令可以在Keycloak文件中获得,但我将努力提供更专业的配置信息。

  • 下载并解压缩键盘斗篷-tomcat8 8-适配器-dist到Tomcat的全局 lib目录中。

修改apiman

提取apiman.warapimanui.warapiman-gateway-api.war并添加以下内容:

  • META-INF/context.xml

apiman.war

代码语言:javascript
复制
<Context path="/apiman">
    <Valve className="org.keycloak.adapters.tomcat.KeycloakAuthenticatorValve"/>
</Context>

apimanui.war

代码语言:javascript
复制
<Context path="/apimanui">
    <Valve className="org.keycloak.adapters.tomcat.KeycloakAuthenticatorValve"/>
</Context>

apiman-gateway-api.war

代码语言:javascript
复制
<Context path="/apiman-gateway-api">
    <Valve className="org.keycloak.adapters.tomcat.KeycloakAuthenticatorValve"/>
</Context>
  • WEB-INF/keycloak.json

apiman.war

代码语言:javascript
复制
{
    "realm": "apiman",
    "resource": "apiman",
    "realm-public-key": "<YOUR REALM'S PUBLIC KEY>",
    "auth-server-url": "http://localhost:9080/auth",
    "ssl-required": "none",
    "use-resource-role-mappings": false,
    "enable-cors": true,
    "cors-max-age": 1000,
    "cors-allowed-methods": "POST, PUT, DELETE, GET",
    "bearer-only": false,
    "enable-basic-auth": true,
    "expose-token": true,
    "credentials" : {
      "secret" : "<APIMAN SECRET HERE, IF ANY>"
    },
    "connection-pool-size": 20,
    "principal-attribute": "preferred_username"
}

apimanui.war中,配置如下所示:

代码语言:javascript
复制
{
    "realm": "apiman",
    "resource": "apimanui",
    "realm-public-key": "<YOUR REALM'S PUBLIC KEY>",
    ...
    "credentials" : {
      "secret" : "<APIMANUI SECRET HERE, IF ANY>"
    },
    "principal-attribute": "preferred_username"
}

apiman-gateway-api.war中,配置如下所示:

代码语言:javascript
复制
{
    "realm": "apiman",
    "resource": "apiman-gateway-api",
    "realm-public-key": "<YOUR REALM'S PUBLIC KEY>",
    ...
    "credentials" : {
      "secret" : "<APIMAN-GATEWAY-API SECRET HERE, IF ANY>"
    },
    "principal-attribute": "preferred_username"
}
  • WEB-INF/web.xml

对于以上所有内容,请将login-config部分替换为:

代码语言:javascript
复制
<login-config>
  <auth-method>BASIC</auth-method>
  <realm-name>apiman</realm-name>
</login-config>

其他问题

您可能希望复制主题(或者自己做)。这是相当容易的,但超出了这个反应的范围。

票数 3
EN

Stack Overflow用户

发布于 2016-05-13 20:53:07

如果您正在使用apache,则没有使用apiman覆盖来部署keycloak web应用程序。相反,用户和密码是在tomcat/conf/tomcat-users.xml文件中定义的,您可以在这里包含新用户,但据我所知,您不能通过apimanui创建新用户。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37129692

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档