/** * Access token replaces the couple {login,password} and is sent through * the login field */ @Test public void use_access_token() throws Exception { answerHelloWorld(); underTest = HttpConnector.newBuilder() .url(serverUrl) .token("theToken") .build(); GetRequest request = new GetRequest("api/issues/search"); underTest.call(request); RecordedRequest recordedRequest = server.takeRequest(); assertThat(recordedRequest.getHeader("Authorization")).isEqualTo(basic("theToken", "")); }
private WsClient createSonarClient() { String hostUrl = removeEnd(mySonarServerConfig.getHostUrl(), "/"); CertificateManager certificateManager = CertificateManager.getInstance(); HttpConnector.Builder connectorBuilder = HttpConnector.newBuilder() .readTimeoutMilliseconds(READ_TIMEOUT_IN_MILLISECONDS) .connectTimeoutMilliseconds(CONNECT_TIMEOUT_IN_MILLISECONDS) .url(hostUrl) .setTrustManager(ConfirmingTrustManager.createForStorage(certificateManager.getCacertsPath(), certificateManager.getPassword())); if (!mySonarServerConfig.isAnonymous()) { if (StringUtils.isNotBlank(mySonarServerConfig.loadToken())) { // https://sonarqube.com/api/user_tokens/search connectorBuilder.token(mySonarServerConfig.getToken()); mySonarServerConfig.clearToken(); } else { mySonarServerConfig.loadPassword(); connectorBuilder.credentials(mySonarServerConfig.getUser(), mySonarServerConfig.getPassword()); mySonarServerConfig.clearPassword(); } } Optional<Proxy> proxy = getIntelliJProxyFor(hostUrl); if (proxy.isPresent()) { HttpConfigurable proxySettings = HttpConfigurable.getInstance(); connectorBuilder.proxy(proxy.get()); if (proxySettings.PROXY_AUTHENTICATION) { connectorBuilder.proxyCredentials(proxySettings.getProxyLogin(), proxySettings.getPlainProxyPassword()); } } return WsClientFactories.getDefault().newClient(connectorBuilder.build()); }