[CORE-344] Support for NTLM2 Created: 01/Jul/19 Updated: 18/Sep/19 Resolved: 05/Sep/19 |
|
Status: | Closed |
Project: | i2b2 Core Software |
Component/s: | None |
Affects Version/s: | None |
Fix Version/s: | 1.7.12 |
Type: | New Feature | Priority: | Major |
Reporter: | Mike Mendis | Assignee: | Reeta Metta |
Resolution: | Fixed | Votes: | 0 |
Labels: | None | ||
Remaining Estimate: | Not Specified | ||
Time Spent: | Not Specified | ||
Original Estimate: | Not Specified |
Rank: | 0|s0000w: |
Sprint: | v1712.1 |
i2b2 Feature/s: |
Login Authentication
|
Participant/s: |
Description |
JCIFS is in maintenance mode and does not support NTML2/3. Action items:
1) Create new security authentication called SecurityAuthenticationNTLM2 2) Propose using SMBj which support 2 and partial 3 Proposed code for new security authentication: import com.hierynomus.smbj.SMBClient; import com.hierynomus.smbj.auth.AuthenticationContext; import com.hierynomus.smbj.connection.Connection; import com.hierynomus.smbj.session.Session; public class SecurityAuthenticationNTLM2 implements SecurityAuthentication { @Override public boolean validateUser(String username, String password, Hashtable params) throws Exception { SMBClient client = new SMBClient(); try ( Connection connection = client.connect((String) params.get("domain_controller"))) { AuthenticationContext ac = new AuthenticationContext(username, password.toCharArray(), (String) params.get("domain")); Session session = connection.authenticate(ac); session.getConnection(); session.close(); return true; } catch(Exception se ) { // NETWORK PROBLEMS? throw new Exception (se.getMessage()); } |
Comments |
Comment by Reeta Metta [ 05/Sep/19 ] |
this is Ready to test |