@Test(groups = { "standalone", "default_provider" }) public void digestAuthTestWithoutScheme() throws IOException, ExecutionException, TimeoutException, InterruptedException { try (AsyncHttpClient client = getAsyncHttpClient(null)) { AsyncHttpClient.BoundRequestBuilder r = client.prepareGet("http://127.0.0.1:" + port1 + "/").setRealm((new Realm.RealmBuilder()).setPrincipal(user).setPassword(admin).setRealmName("MyRealm").build()); Future<Response> f = r.execute(); Response resp = f.get(60, TimeUnit.SECONDS); assertNotNull(resp); assertEquals(resp.getStatusCode(), HttpServletResponse.SC_OK); assertNotNull(resp.getHeader("X-Auth")); } }
@Test(groups = { "standalone", "default_provider" }) public void digestAuthTest() throws IOException, ExecutionException, TimeoutException, InterruptedException { try (AsyncHttpClient client = getAsyncHttpClient(null)) { AsyncHttpClient.BoundRequestBuilder r = client.prepareGet("http://127.0.0.1:" + port1 + "/").setRealm((new Realm.RealmBuilder()).setPrincipal(user).setPassword(admin).setRealmName("MyRealm").setScheme(Realm.AuthScheme.DIGEST).build()); Future<Response> f = r.execute(); Response resp = f.get(60, TimeUnit.SECONDS); assertNotNull(resp); assertEquals(resp.getStatusCode(), HttpServletResponse.SC_OK); assertNotNull(resp.getHeader("X-Auth")); } }
@Test(groups = "fast") public void testClone() { RealmBuilder builder = new RealmBuilder(); builder.setPrincipal("user").setPassword("pass"); builder.setCharset(UTF_16).setUsePreemptiveAuth(true); builder.setRealmName("realm").setAlgorithm("algo"); builder.setScheme(AuthScheme.BASIC); Realm orig = builder.build(); Realm clone = new RealmBuilder().clone(orig).build(); Assert.assertEquals(clone.getPrincipal(), orig.getPrincipal()); Assert.assertEquals(clone.getPassword(), orig.getPassword()); Assert.assertEquals(clone.getCharset(), orig.getCharset()); Assert.assertEquals(clone.getUsePreemptiveAuth(), orig.getUsePreemptiveAuth()); Assert.assertEquals(clone.getRealmName(), orig.getRealmName()); Assert.assertEquals(clone.getAlgorithm(), orig.getAlgorithm()); Assert.assertEquals(clone.getScheme(), orig.getScheme()); }
public RealmBuilder clone(Realm clone) { setRealmName(clone.getRealmName()); setAlgorithm(clone.getAlgorithm()); setMethodName(clone.getMethodName()); setNc(clone.getNc()); setNonce(clone.getNonce()); setPassword(clone.getPassword()); setPrincipal(clone.getPrincipal()); setEnconding(clone.getEncoding()); setOpaque(clone.getOpaque()); setQop(clone.getQop()); setScheme(clone.getScheme()); setUri(clone.getUri()); setUsePreemptiveAuth(clone.getUsePreemptiveAuth()); setNtlmDomain(clone.getNtlmDomain()); setNtlmHost(clone.getNtlmHost()); setNtlmMessageType2Received(clone.isNtlmMessageType2Received()); setUseAbsoluteURI(clone.isUseAbsoluteURI()); setOmitQuery(clone.isOmitQuery()); setTargetProxy(clone.isTargetProxy()); return this; }
public RealmBuilder clone(Realm clone) { return setRealmName(clone.getRealmName())// .setAlgorithm(clone.getAlgorithm())// .setMethodName(clone.getMethodName())// .setNc(clone.getNc())// .setNonce(clone.getNonce())// .setPassword(clone.getPassword())// .setPrincipal(clone.getPrincipal())// .setCharset(clone.getCharset())// .setOpaque(clone.getOpaque())// .setQop(clone.getQop())// .setScheme(clone.getScheme())// .setUri(clone.getUri())// .setUsePreemptiveAuth(clone.getUsePreemptiveAuth())// .setNtlmDomain(clone.getNtlmDomain())// .setNtlmHost(clone.getNtlmHost())// .setUseAbsoluteURI(clone.isUseAbsoluteURI())// .setOmitQuery(clone.isOmitQuery())// .setTargetProxy(clone.isTargetProxy()); }
public RealmBuilder clone(Realm clone) { return setRealmName(clone.getRealmName())// .setAlgorithm(clone.getAlgorithm())// .setMethodName(clone.getMethodName())// .setNc(clone.getNc())// .setNonce(clone.getNonce())// .setPassword(clone.getPassword())// .setPrincipal(clone.getPrincipal())// .setCharset(clone.getCharset())// .setOpaque(clone.getOpaque())// .setQop(clone.getQop())// .setScheme(clone.getScheme())// .setUri(clone.getUri())// .setUsePreemptiveAuth(clone.getUsePreemptiveAuth())// .setNtlmDomain(clone.getNtlmDomain())// .setNtlmHost(clone.getNtlmHost())// .setUseAbsoluteURI(clone.isUseAbsoluteURI())// .setOmitQuery(clone.isOmitQuery())// .setTargetProxy(clone.isTargetProxy()); }
public RealmBuilder parseWWWAuthenticateHeader(String headerLine) { setRealmName(match(headerLine, "realm")); setNonce(match(headerLine, "nonce")); String algorithm = match(headerLine, "algorithm"); if (isNonEmpty(algorithm)) { setAlgorithm(algorithm); } setOpaque(match(headerLine, "opaque")); String rawQop = match(headerLine, "qop"); if (rawQop != null) { setQop(parseRawQop(rawQop)); } if (isNonEmpty(getNonce())) { setScheme(AuthScheme.DIGEST); } else { setScheme(AuthScheme.BASIC); } return this; }
private void testOldDigest(String qop) { String user = "user"; String pass = "pass"; String realm = "realm"; String nonce = "nonce"; String method = "GET"; Uri uri = Uri.create("http://ahc.io/foo"); RealmBuilder builder = new RealmBuilder(); builder.setPrincipal(user).setPassword(pass); builder.setNonce(nonce); builder.setUri(uri); builder.setMethodName(method); builder.setRealmName(realm); builder.setQop(qop); builder.setScheme(AuthScheme.DIGEST); Realm orig = builder.build(); String ha1 = getMd5(user + ":" + realm + ":" + pass); String ha2 = getMd5(method + ":" + uri.getPath()); String expectedResponse = getMd5(ha1 + ":" + nonce + ":" + ha2); Assert.assertEquals(expectedResponse, orig.getResponse()); }
public RealmBuilder parseWWWAuthenticateHeader(String headerLine) { setRealmName(match(headerLine, "realm")); setNonce(match(headerLine, "nonce")); String algorithm = match(headerLine, "algorithm"); if (isNonEmpty(algorithm)) { setAlgorithm(algorithm); } setOpaque(match(headerLine, "opaque")); String rawQop = match(headerLine, "qop"); if (rawQop != null) { setQop(parseRawQop(rawQop)); } if (isNonEmpty(getNonce())) { setScheme(AuthScheme.DIGEST); } else { setScheme(AuthScheme.BASIC); } return this; }
public RealmBuilder parseProxyAuthenticateHeader(String headerLine) { setRealmName(match(headerLine, "realm")); setNonce(match(headerLine, "nonce")); setOpaque(match(headerLine, "opaque")); String algorithm = match(headerLine, "algorithm"); if (isNonEmpty(algorithm)) { setAlgorithm(algorithm); } setQop(match(headerLine, "qop")); if (isNonEmpty(getNonce())) { setScheme(AuthScheme.DIGEST); } else { setScheme(AuthScheme.BASIC); } setTargetProxy(true); return this; }
public RealmBuilder parseProxyAuthenticateHeader(String headerLine) { setRealmName(match(headerLine, "realm")); setNonce(match(headerLine, "nonce")); setOpaque(match(headerLine, "opaque")); String algorithm = match(headerLine, "algorithm"); if (isNonEmpty(algorithm)) { setAlgorithm(algorithm); } setQop(match(headerLine, "qop")); if (isNonEmpty(getNonce())) { setScheme(AuthScheme.DIGEST); } else { setScheme(AuthScheme.BASIC); } setTargetProxy(true); return this; }
public RealmBuilder parseWWWAuthenticateHeader(String headerLine) { setRealmName(match(headerLine, "realm")); setNonce(match(headerLine, "nonce")); String algorithm = match(headerLine, "algorithm"); if (isNonEmpty(algorithm)) { setAlgorithm(algorithm); } setOpaque(match(headerLine, "opaque")); setQop(match(headerLine, "qop")); if (isNonEmpty(getNonce())) { setScheme(AuthScheme.DIGEST); } else { setScheme(AuthScheme.BASIC); } return this; }
public Builder setRealmName(String realmName) { realm().setRealmName(realmName); return this; }
public RealmBuilder parseProxyAuthenticateHeader(String headerLine) { setRealmName(match(headerLine, "realm")); setNonce(match(headerLine, "nonce")); setOpaque(match(headerLine, "opaque")); setQop(match(headerLine, "qop")); if (isNonEmpty(getNonce())) { setScheme(AuthScheme.DIGEST); } else { setScheme(AuthScheme.BASIC); } setTargetProxy(true); return this; }
public Builder setRealmName(String realmName) { realm().setRealmName(realmName); return this; }
public Builder setRealmName(String realmName) { realm().setRealmName(realmName); return this; }
public RealmBuilder parseProxyAuthenticateHeader(String headerLine) { setRealmName(match(headerLine, "realm")); setNonce(match(headerLine, "nonce")); setOpaque(match(headerLine, "opaque")); String algorithm = match(headerLine, "algorithm"); if (isNonEmpty(algorithm)) { setAlgorithm(algorithm); } setQop(match(headerLine, "qop")); if (isNonEmpty(getNonce())) { setScheme(AuthScheme.DIGEST); } else { setScheme(AuthScheme.BASIC); } setTargetProxy(true); return this; }
public RealmBuilder clone(Realm clone) { return setRealmName(clone.getRealmName())// .setAlgorithm(clone.getAlgorithm())// .setMethodName(clone.getMethodName())// .setNc(clone.getNc())// .setNonce(clone.getNonce())// .setPassword(clone.getPassword())// .setPrincipal(clone.getPrincipal())// .setCharset(clone.getCharset())// .setOpaque(clone.getOpaque())// .setQop(clone.getQop())// .setScheme(clone.getScheme())// .setUri(clone.getUri())// .setUsePreemptiveAuth(clone.getUsePreemptiveAuth())// .setNtlmDomain(clone.getNtlmDomain())// .setNtlmHost(clone.getNtlmHost())// .setUseAbsoluteURI(clone.isUseAbsoluteURI())// .setOmitQuery(clone.isOmitQuery())// .setTargetProxy(clone.isTargetProxy()); }
public RealmBuilder parseWWWAuthenticateHeader(String headerLine) { setRealmName(match(headerLine, "realm")); setNonce(match(headerLine, "nonce")); String algorithm = match(headerLine, "algorithm"); if (isNonEmpty(algorithm)) { setAlgorithm(algorithm); } setOpaque(match(headerLine, "opaque")); String rawQop = match(headerLine, "qop"); if (rawQop != null) { setQop(parseRawQop(rawQop)); } if (isNonEmpty(getNonce())) { setScheme(AuthScheme.DIGEST); } else { setScheme(AuthScheme.BASIC); } return this; }
public Builder setRealmName(String realmName) { realm().setRealmName(realmName); return this; }