boolean doDynamicInstanceDiscovery(final Map<String, String> headers, final Proxy proxy, final SSLSocketFactory sslSocketFactory) throws Exception { final String json = HttpHelper.executeHttpGet(log, instanceDiscoveryEndpoint, headers, proxy, sslSocketFactory); final InstanceDiscoveryResponse discoveryResponse = JsonHelper .convertJsonToObject(json, InstanceDiscoveryResponse.class); return !StringHelper.isBlank(discoveryResponse .getTenantDiscoveryEndpoint()); }
static WSTrustResponse execute(String url, String username, String password, String cloudAudienceUrn, Proxy proxy, SSLSocketFactory sslSocketFactory, boolean logPii) throws Exception { String mexResponse = HttpHelper.executeHttpGet(log, url, proxy, sslSocketFactory); BindingPolicy policy = MexParser.getWsTrustEndpointFromMexResponse(mexResponse, logPii); if(policy == null){ throw new AuthenticationException("WsTrust endpoint not found in metadata document"); } return execute(username, password, cloudAudienceUrn, policy, proxy, sslSocketFactory); }
AuthenticationResult execute() throws Exception { if (authGrant instanceof AdalOAuthAuthorizationGrant) { authGrant = processPasswordGrant((AdalOAuthAuthorizationGrant) authGrant); } if (this.authGrant instanceof AdalIntegratedAuthorizationGrant) { AdalIntegratedAuthorizationGrant integratedAuthGrant = (AdalIntegratedAuthorizationGrant) authGrant; authGrant = new AdalOAuthAuthorizationGrant( getAuthorizationGrantIntegrated(integratedAuthGrant.getUserName()), integratedAuthGrant.getResource()); } return context.acquireTokenCommon(this.authGrant, this.clientAuth, this.headers); }
static WSTrustResponse execute(String mexURL, String cloudAudienceUrn, Proxy proxy, SSLSocketFactory sslSocketFactory, boolean logPii) throws Exception { String mexResponse = HttpHelper.executeHttpGet(log, mexURL, proxy, sslSocketFactory); BindingPolicy policy = MexParser.getPolicyFromMexResponseForIntegrated(mexResponse, logPii); if(policy == null){ throw new AuthenticationException("WsTrust endpoint not found in metadata document"); } return execute(null, null, cloudAudienceUrn, policy, proxy, sslSocketFactory); }
DeviceCode execute() throws Exception { context.authenticationAuthority.doInstanceDiscovery(headers.getReadonlyHeaderMap(), context.proxy, context.sslSocketFactory); return DeviceCodeRequest.execute(context.authenticationAuthority.getDeviceCodeEndpoint(), clientId, resource, headers.getReadonlyHeaderMap(), context.proxy, context.sslSocketFactory); } }
private void validateDeviceCodeRequestInput(final DeviceCode deviceCode, final Object credential, final String resource) { if (StringHelper.isBlank(deviceCode.getDeviceCode())) { throw new IllegalArgumentException("device code is null or empty"); } if (StringHelper.isBlank(deviceCode.getCorrelationId())) { throw new IllegalArgumentException("correlation id in device code is null or empty"); } this.validateInput(resource, credential, true); }
ClientDataHttpHeaders(final String correlationId) { if (!StringHelper.isBlank(correlationId)) { this.correlationIdHeaderValue = correlationId; } else { this.correlationIdHeaderValue = generateCorrelationId(); } this.headerValues = initHeaderMap(); }
AcquireTokenCallable(AuthenticationContext context, AdalAuthorizationGrant authGrant, ClientAuthentication clientAuth, AuthenticationCallback<AuthenticationResult> callback) { super(context, callback); this.authGrant = authGrant; this.clientAuth = clientAuth; String correlationId = context.correlationId; if (StringHelper.isBlank(correlationId) && authGrant instanceof AdalDeviceCodeAuthorizationGrant) { correlationId = ((AdalDeviceCodeAuthorizationGrant) authGrant).getCorrelationId(); } this.headers = new ClientDataHttpHeaders(correlationId); }
private void validateDeviceCodeRequestInput(String clientId, String resource) { if (StringHelper.isBlank(clientId)) { throw new IllegalArgumentException("clientId is null or empty"); } if (StringHelper.isBlank(resource)) { throw new IllegalArgumentException("resource is null or empty"); } if (AuthorityType.ADFS.equals(authenticationAuthority.getAuthorityType())){ throw new IllegalArgumentException( "Invalid authority type. Device Flow is not supported by ADFS authority"); } }
static UserDiscoveryResponse execute(String uri) throws Exception { String response = HttpHelper.executeHttpGet(log, uri, HEADERS); return JsonHelper.convertJsonToObject(response, UserDiscoveryResponse.class); } }
static String getWsTrustEndpointFromMexEndpoint(String metadataEndpoint) throws Exception { String mexResponse = HttpHelper.executeHttpGet(log, metadataEndpoint); return getWsTrustEndpointFromMexResponse(mexResponse); }
static WSTrustResponse execute(String url, String username, String password, String cloudAudienceUrn, Proxy proxy, SSLSocketFactory sslSocketFactory, boolean logPii) throws Exception { String mexResponse = HttpHelper.executeHttpGet(log, url, proxy, sslSocketFactory); BindingPolicy policy = MexParser.getWsTrustEndpointFromMexResponse(mexResponse, logPii); if(policy == null){ throw new AuthenticationException("WsTrust endpoint not found in metadata document"); } return execute(username, password, cloudAudienceUrn, policy, proxy, sslSocketFactory); }
boolean doDynamicInstanceDiscovery(final Map<String, String> headers, final Proxy proxy, final SSLSocketFactory sslSocketFactory) throws Exception { final String json = HttpHelper.executeHttpGet(log, instanceDiscoveryEndpoint, headers, proxy, sslSocketFactory); final InstanceDiscoveryResponse discoveryResponse = JsonHelper .convertJsonToObject(json, InstanceDiscoveryResponse.class); return !StringHelper.isBlank(discoveryResponse .getTenantDiscoveryEndpoint()); }
static WSTrustResponse execute(String mexURL, String cloudAudienceUrn, Proxy proxy, SSLSocketFactory sslSocketFactory, boolean logPii) throws Exception { String mexResponse = HttpHelper.executeHttpGet(log, mexURL, proxy, sslSocketFactory); BindingPolicy policy = MexParser.getPolicyFromMexResponseForIntegrated(mexResponse, logPii); if(policy == null){ throw new AuthenticationException("WsTrust endpoint not found in metadata document"); } return execute(null, null, cloudAudienceUrn, policy, proxy, sslSocketFactory); }
AuthenticationResult execute() throws Exception { if (authGrant instanceof AdalOAuthAuthorizationGrant) { authGrant = processPasswordGrant((AdalOAuthAuthorizationGrant) authGrant); } if (this.authGrant instanceof AdalIntegratedAuthorizationGrant) { AdalIntegratedAuthorizationGrant integratedAuthGrant = (AdalIntegratedAuthorizationGrant) authGrant; authGrant = new AdalOAuthAuthorizationGrant( getAuthorizationGrantIntegrated(integratedAuthGrant.getUserName()), integratedAuthGrant.getResource()); } return context.acquireTokenCommon(this.authGrant, this.clientAuth, this.headers); }
DeviceCode execute() throws Exception { context.authenticationAuthority.doInstanceDiscovery(headers.getReadonlyHeaderMap(), context.proxy, context.sslSocketFactory); return DeviceCodeRequest.execute(context.authenticationAuthority.getDeviceCodeEndpoint(), clientId, resource, headers.getReadonlyHeaderMap(), context.proxy, context.sslSocketFactory); } }
ClientDataHttpHeaders(final String correlationId) { if (!StringHelper.isBlank(correlationId)) { this.correlationIdHeaderValue = correlationId; } else { this.correlationIdHeaderValue = generateCorrelationId(); } this.headerValues = initHeaderMap(); }
AcquireTokenCallable(AuthenticationContext context, AdalAuthorizationGrant authGrant, ClientAuthentication clientAuth, AuthenticationCallback<AuthenticationResult> callback) { super(context, callback); this.authGrant = authGrant; this.clientAuth = clientAuth; String correlationId = context.correlationId; if (StringHelper.isBlank(correlationId) && authGrant instanceof AdalDeviceCodeAuthorizationGrant) { correlationId = ((AdalDeviceCodeAuthorizationGrant) authGrant).getCorrelationId(); } this.headers = new ClientDataHttpHeaders(correlationId); }
private void validateDeviceCodeRequestInput(String clientId, String resource) { if (StringHelper.isBlank(clientId)) { throw new IllegalArgumentException("clientId is null or empty"); } if (StringHelper.isBlank(resource)) { throw new IllegalArgumentException("resource is null or empty"); } if (AuthorityType.ADFS.equals(authenticationAuthority.getAuthorityType())){ throw new IllegalArgumentException( "Invalid authority type. Device Flow is not supported by ADFS authority"); } }
boolean doDynamicInstanceDiscovery(final Map<String, String> headers) throws Exception { final String json = HttpHelper.executeHttpGet(log, instanceDiscoveryEndpoint, headers); final InstanceDiscoveryResponse discoveryResponse = JsonHelper .convertJsonToObject(json, InstanceDiscoveryResponse.class); return !StringHelper.isBlank(discoveryResponse .getTenantDiscoveryEndpoint()); }