use of org.apache.qpid.server.security.auth.sasl.SaslNegotiator in project qpid-broker-j by apache.
the class ExternalAuthenticationManagerTest method testAuthenticatePrincipalCnAndDc.
public void testAuthenticatePrincipalCnAndDc() throws Exception {
X500Principal principal = new X500Principal("CN=person, DC=example, DC=com");
UsernamePrincipal expectedPrincipal = new UsernamePrincipal("person@example.com", _manager);
when(_saslSettings.getExternalPrincipal()).thenReturn(principal);
SaslNegotiator negotiator = _manager.createSaslNegotiator("EXTERNAL", _saslSettings, null);
AuthenticationResult result = negotiator.handleResponse(new byte[0]);
assertNotNull(result);
assertEquals("Expected authentication to be successful", AuthenticationResult.AuthenticationStatus.SUCCESS, result.getStatus());
assertOnlyContainsWrapped(expectedPrincipal, result.getPrincipals());
assertEquals("person@example.com", result.getMainPrincipal().getName());
}
use of org.apache.qpid.server.security.auth.sasl.SaslNegotiator in project qpid-broker-j by apache.
the class ExternalAuthenticationManagerTest method testAuthenticatePrincipalCn_OtherComponentsIgnored.
public void testAuthenticatePrincipalCn_OtherComponentsIgnored() throws Exception {
X500Principal principal = new X500Principal("CN=person, O=My Company Ltd, L=Newbury, ST=Berkshire, C=GB");
UsernamePrincipal expectedPrincipal = new UsernamePrincipal("person", _manager);
when(_saslSettings.getExternalPrincipal()).thenReturn(principal);
SaslNegotiator negotiator = _manager.createSaslNegotiator("EXTERNAL", _saslSettings, null);
AuthenticationResult result = negotiator.handleResponse(new byte[0]);
assertNotNull(result);
assertEquals("Expected authentication to be successful", AuthenticationResult.AuthenticationStatus.SUCCESS, result.getStatus());
assertOnlyContainsWrapped(expectedPrincipal, result.getPrincipals());
assertEquals("person", result.getMainPrincipal().getName());
}
use of org.apache.qpid.server.security.auth.sasl.SaslNegotiator in project qpid-broker-j by apache.
the class ExternalAuthenticationManagerTest method testAuthenticatePrincipalEmptyCn_CausesAuthError.
public void testAuthenticatePrincipalEmptyCn_CausesAuthError() throws Exception {
X500Principal principal = new X500Principal("CN=, DC=example, DC=com, O=My Company Ltd, L=Newbury, ST=Berkshire, C=GB");
when(_saslSettings.getExternalPrincipal()).thenReturn(principal);
SaslNegotiator negotiator = _manager.createSaslNegotiator("EXTERNAL", _saslSettings, null);
AuthenticationResult result = negotiator.handleResponse(new byte[0]);
assertNotNull(result);
assertEquals("Expected authentication to be unsuccessful", AuthenticationResult.AuthenticationStatus.ERROR, result.getStatus());
assertNull(result.getMainPrincipal());
}
use of org.apache.qpid.server.security.auth.sasl.SaslNegotiator in project qpid-broker-j by apache.
the class ManagedAuthenticationManagerTestBase method testAllSaslMechanisms.
public void testAllSaslMechanisms() throws Exception {
final SaslSettings saslSettings = mock(SaslSettings.class);
when(saslSettings.getLocalFQDN()).thenReturn("testhost.example.com");
for (String mechanism : _authManager.getMechanisms()) {
final SaslNegotiator negotiator = _authManager.createSaslNegotiator(mechanism, saslSettings, null);
assertNotNull(String.format("Could not create SASL negotiator for mechanism '%s'", mechanism), negotiator);
}
}
use of org.apache.qpid.server.security.auth.sasl.SaslNegotiator in project qpid-broker-j by apache.
the class ManagedAuthenticationManagerTestBase method testUnsupportedSaslMechanisms.
public void testUnsupportedSaslMechanisms() throws Exception {
final SaslSettings saslSettings = mock(SaslSettings.class);
when(saslSettings.getLocalFQDN()).thenReturn("testhost.example.com");
final SaslNegotiator negotiator = _authManager.createSaslNegotiator("UNSUPPORTED MECHANISM", saslSettings, null);
assertNull("Should not be able to create SASL negotiator for unsupported mechanism", negotiator);
}
Aggregations