public async Task <AuthenticationResultResp> Authenticate(string authority, string resource, string clientId, string returnUri)
        {
            var authResultResp = new AuthenticationResultResp();

            try
            {
                var authContext    = new AuthenticationContext(authority);
                var platformParams = new PlatformParameters((Android.App.Activity)Forms.Context);
                authResultResp.AuthenticationResult = await authContext.AcquireTokenAsync(resource, clientId, new Uri(returnUri), platformParams);
            }
            catch (AdalException ex)
            {
                authResultResp.ErrorMsg = ex.ErrorCode;
            }

            return(authResultResp);
        }
Beispiel #2
0
        public async Task <AuthenticationResultResp> Authenticate(string authority, string resource, string clientId, string returnUri)
        {
            var authResultResp = new AuthenticationResultResp();

            try
            {
                var authContext    = new AuthenticationContext(authority);
                var platformParams = new PlatformParameters(UIApplication.SharedApplication.KeyWindow.RootViewController);
                authResultResp.AuthenticationResult = await authContext.AcquireTokenAsync(resource, clientId, new Uri(returnUri), platformParams);
            }
            catch (AdalException ex)
            {
                authResultResp.ErrorMsg = ex.ErrorCode;
            }

            return(authResultResp);
        }
        /// <summary>
        /// Authenticate UWP.
        /// </summary>
        /// <param name="authority"></param>
        /// <param name="resource"></param>
        /// <param name="clientId"></param>
        /// <param name="returnUri"></param>
        /// <returns></returns>
        public async Task <AuthenticationResultResp> Authenticate(string authority, string resource, string clientId, string returnUri)
        {
            var authResultResp = new AuthenticationResultResp();

            try
            {
                var authContext    = new AuthenticationContext(authority);
                var platformParams = new PlatformParameters(PromptBehavior.Auto, false);

                authResultResp.AuthenticationResult = await authContext.AcquireTokenAsync(resource, clientId, new Uri(returnUri), platformParams);
            }
            catch (AdalException ex)
            {
                authResultResp.ErrorMsg = ex.ErrorCode;
            }
            catch (Exception ex)
            {
                authResultResp.ErrorMsg = ex.Message;
            }

            return(authResultResp);
        }