java - 如何使用Realm修改tomcat的基本登录认证?

标签 java jsp tomcat authentication jdbcrealm

我有一个带有 tomcat、javajsp 的网络项目。我已经在 tomcat 的 server.xml 中使用 Realm(基本身份验证)进行了身份验证,如下所示:

  <Realm  className="org.apache.catalina.realm.JDBCRealm"
         driverName="org.gjt.mm.mysql.Driver"
      connectionURL="jdbc:mysql://localhost/*****"
     connectionName="***" connectionPassword="****"
          userTable="person" userNameCol="personid" userCredCol="passwort"
      userRoleTable="userroles" roleNameCol="rolename" />

所以我有两个数据表:person 和 userroles。

所以当我登录时,我会收到标准的登录窗口,我必须在其中输入我的用户名和密码...

但知道我想要在此登录窗口中多一个选项(字段项目名称)。像这样:

username:
passwort: 
projectname:(Combobox with all projects in the databasetable projects)

如果用户名和密码正确,我会查看用户角色表,如果这个用户有这个项目的权限:

userroletable 看起来像这样:

userroleid userrolename  projectname  personid 

如何在登录窗口中多做一个选项?例如

非常感谢您的帮助。

最佳答案

您不能使用浏览器提供表单的基本身份验证来执行此操作。您将必须使用表单例份验证并提供您自己的表单。

关于java - 如何使用Realm修改tomcat的基本登录认证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17107449/

相关文章:

java - 将上传文件的文件名存储在数据库java中

java - 内容类型不允许 : fileUpload in Struts 2

spring-mvc - 如何为 Elastic Beanstalk 应用程序正确配置 Spring Datasource?

java - 插入新数据后用数据库数据更新 JcomboBox 中的数据

java - 单击该行时设置 CheckboxTableViewer 的复选框

javascript - 无法通过JS更新隐藏字段

tomcat - https 检查服务器

java - 将 SQLCipher 与 android 附带的 sqlite 数据库文件一起使用

java - 具有多个键和值字段的 SortedMap

java - 系统找不到指定的路径(MANIFEST.MF)