use of org.apache.sling.auth.core.spi.AuthenticationInfo in project sling by apache.
the class AuthenticationInfoTest method testSetUser.
@Test
public void testSetUser() {
final AuthenticationInfo info = new AuthenticationInfo("test", "user");
Assert.assertEquals("user", info.getUser());
info.setUser(null);
Assert.assertEquals("user", info.getUser());
info.setUser("dummy");
Assert.assertEquals("dummy", info.getUser());
info.setUser("");
Assert.assertEquals("", info.getUser());
}
use of org.apache.sling.auth.core.spi.AuthenticationInfo in project sling by apache.
the class AuthenticationInfoTest method testGetPassword.
@Test
public void testGetPassword() {
final char[] pwd = new char[6];
final AuthenticationInfo info = new AuthenticationInfo("test", "name", pwd);
assertSame(pwd, info.getPassword());
assertEquals(pwd, (char[]) info.get(ResourceResolverFactory.PASSWORD));
Assert.assertEquals(info.get(ResourceResolverFactory.PASSWORD), info.getPassword());
}
use of org.apache.sling.auth.core.spi.AuthenticationInfo in project sling by apache.
the class AuthenticationInfoTest method testSetPassword.
@Test
public void testSetPassword() {
final char[] pwd = new char[6];
final AuthenticationInfo info = new AuthenticationInfo("test", "name");
assertFalse(info.containsKey(ResourceResolverFactory.PASSWORD));
info.setPassword(pwd);
assertSame(pwd, info.get(ResourceResolverFactory.PASSWORD));
info.setPassword(null);
assertSame(pwd, info.get(ResourceResolverFactory.PASSWORD));
}
use of org.apache.sling.auth.core.spi.AuthenticationInfo in project sling by apache.
the class EngineAuthenticationHandlerHolder method doExtractCredentials.
public AuthenticationInfo doExtractCredentials(HttpServletRequest request, HttpServletResponse response) {
org.apache.sling.engine.auth.AuthenticationInfo engineAuthInfo = handler.authenticate(request, response);
if (engineAuthInfo == null) {
return null;
} else if (engineAuthInfo == org.apache.sling.engine.auth.AuthenticationInfo.DOING_AUTH) {
return AuthenticationInfo.DOING_AUTH;
}
// backwards compatibility support for JCR credentials and workspace
// name now encapsulated in the JCR Resource bundle
AuthenticationInfo info = new AuthenticationInfo(engineAuthInfo.getAuthType());
info.put("user.jcr.credentials", engineAuthInfo.getCredentials());
info.put("user.jcr.workspace", engineAuthInfo.getWorkspaceName());
return info;
}
use of org.apache.sling.auth.core.spi.AuthenticationInfo in project sling by apache.
the class SlingAuthenticatorTest method test_childNodeShouldHaveAuthenticationInfo2.
/**
* Test is OK for same node;
* @throws Throwable
*/
@Test
public void test_childNodeShouldHaveAuthenticationInfo2() throws Throwable {
final String AUTH_TYPE = "AUTH_TYPE_TEST";
final String PROTECTED_PATH = "/content/en/test";
final String REQUEST_CHILD_NODE = "/content/en/test";
SlingAuthenticator slingAuthenticator = new SlingAuthenticator();
PathBasedHolderCache<AbstractAuthenticationHandlerHolder> authRequiredCache = new PathBasedHolderCache<AbstractAuthenticationHandlerHolder>();
authRequiredCache.addHolder(buildAuthHolderForAuthTypeAndPath(AUTH_TYPE, PROTECTED_PATH));
PrivateAccessor.setField(slingAuthenticator, "authHandlerCache", authRequiredCache);
final HttpServletRequest request = context.mock(HttpServletRequest.class);
buildExpectationsForRequestPathAndAuthPath(request, REQUEST_CHILD_NODE, PROTECTED_PATH);
AuthenticationInfo authInfo = (AuthenticationInfo) PrivateAccessor.invoke(slingAuthenticator, "getAuthenticationInfo", new Class[] { HttpServletRequest.class, HttpServletResponse.class }, new Object[] { request, context.mock(HttpServletResponse.class) });
/**
* The AUTH TYPE defined aboved should be used for the path /test and his children: eg /test/childnode.
*/
Assert.assertTrue(AUTH_TYPE.equals(authInfo.getAuthType()));
}
Aggregations