I have a question regarding AuthenticationManager when pointed at internal secured services (on internal ArcGIS Token Authentication Service). Can I use AuthenticationManager against such services in Android? All the samples I see for Android are used with Portal, not with an individual secured feature service pointed at internal ArcGIS Server. Getting Portal to authenticate is a breeze as follows....
final AuthenticationChallengeHandler handler = new DefaultAuthenticationChallengeHandler(activity.get());
final OAuthConfiguration oAC = new OAuthConfiguration(urlLogin, Client_ID2, "my-arcgis-app://auth", OAUTH_EXPIRATION_NEVER);
AuthenticationManager.addOAuthConfiguration(oAC);
AuthenticationManager.setAuthenticationChallengeHandler(handler);
I see a couple of methods in .NET which I also cannot seem to get to work in a WPF project that do not seem available in Android....Seems strange I would need to provide a client re-direct for a secured service...Thought that was only for portal?
https://developers.arcgis.com/net/latest/android/guide/use-the-authentication-manager.htm
OAuth authorization
// define server info for an OAuth (authorization code) server var serverInfo = new ServerInfo { ServerUri = new Uri(ServerUrl), TokenAuthenticationType = TokenAuthenticationType.OAuthAuthorizationCode, OAuthClientInfo = new OAuthClientInfo { ClientId = ClientId, ClientSecret = ClientSecret, RedirectUri = new Uri(RedirectUrl) } }; // register the portal with authentication manager AuthenticationManager.Current.RegisterServer(serverInfo);
HTTP (integrated Windows authentication) authorization
// Create a hard-coded network credential ArcGISNetworkCredential hardcodedCredential = new ArcGISNetworkCredential { Credentials = new System.Net.NetworkCredential(NetworkUsername, NetworkPassword, NetworkDomain), ServiceUri = new Uri(SecuredPortalUrl) }; // Add the credential to the AuthenticationManager and report that a non-default credential is being used AuthenticationManager.Current.AddCredential(hardcodedCredential);