code: protected Subject login() {
  		if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) {
  			SibTr.entry(tc, CLASS_NAME + "login");
  		}
  		Subject subject = null;
  		try {
  			/*
  			 * Only if we have the AuthenticationService running, we can do
  			 * Authentication. If it is not present we cannot do any
  			 * authentication and hence we have return null, which means
  			 * authentication failed
  			 */
  			if (_authenticationService != null) {
  				subject = _authenticationService.authenticate(MESSAGING_JASS_ENTRY_NAME,
  						_authenticationData, _partialSubject);
  			}
  		} catch (AuthenticationException ae) {
  			// No FFDC Required. We will throw exception if the subject is Null later
  			if(TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
  				SibTr.debug(tc, "EXCEPTION_OCCURED_DURING_AUTHENTICATION_MSE1001");
  				SibTr.exception(tc, ae);
  			}
  		} finally {
  			if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) {
  				SibTr.exit(tc, CLASS_NAME + "login");
  			}
  		}
  		return subject;
  	}
docs: The method to authenticate a User
  @return
  Subject: If the User is authenticated
  Null   : If User is not authenticated