https://bz.apache.org/bugzilla/show_bug.cgi?id=63681
Bug ID: 63681 Summary: Introduce RealmBase#authenticate(GSSName, GSSCredential) and friends Product: Tomcat 8 Version: 8.5.x-trunk Hardware: All OS: All Status: NEW Severity: enhancement Priority: P2 Component: Catalina Assignee: dev@tomcat.apache.org Reporter: micha...@apache.org Target Milestone: ---- There are several situations where #authentiate(GSSContext, boolean) does not cover all needs: * You have a developer authenticator which obtains the GSSName of the currently logged in principal, e.g., http://tomcatspnegoad.sourceforge.net/xref/net/sf/michaelo/tomcat/authenticator/CurrentWindowsIdentityAuthenticator.html#CurrentWindowsIdentityAuthenticator * You perform protocol transition and have deduced the user's GSS name, e.g., MS-SFU * You perform TLS cert auth and extract from SAN msUPN or the emailAdress fields * You completely lose the GSS name OID and cannot distinguish what type of name that was, i.e., Kerberos principal, Kerberos enterprise princial, MS user principal name, or an email address * The authenticator has established and verified the security context for you and passing required information only * You perform authentication by a reserve proxy and pass that information with request headers, e.g., https://github.com/modauthgssapi/mod_auth_gssapi Along with this, we require to have #getPrincipal(GSSName) and #getPrincipal(GSSName, GSSCredential). The former would simply call the latter with a second argument null value. #getPrincipal(String, GSSCredential) would be deprecated because it loses information. #isStripRealmForGss() would be called as late as possible in #getPrincipal(GSSName, GSSCredential), leaving #authenticate() alone. I will work this out in a separate branch. -- You are receiving this mail because: You are the assignee for the bug. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org