コード例 #1
0
        private void SetAuthState(AuthState state)
        {
            var pref = _context.GetSharedPreferences(nameof(AuthService), FileCreationMode.Private);

            pref.Edit()
            .PutString(nameof(AuthState), state.JsonSerializeString())
            .Apply();
        }
コード例 #2
0
ファイル: OpenIdService.cs プロジェクト: jollifft/OpenIdForms
        private PendingIntent CreatePostAuthorizationIntent(Context context, AuthorizationRequest request, AuthorizationServiceDiscovery discoveryDoc)
        {
            Intent intent = new Intent(context, typeof(RedirectActivity));

            intent.PutExtra(Constants.EXTRA_AUTH_STATE, AuthState.JsonSerializeString());
            if (discoveryDoc != null)
            {
                intent.PutExtra("authServiceDiscovery", discoveryDoc.DocJson.ToString());
            }

            return(PendingIntent.GetActivity(context, request.GetHashCode(), intent, 0));
        }
コード例 #3
0
        public static PendingIntent CreatePostAuthorizationIntent(Context context, AuthorizationRequest request, AuthorizationServiceDiscovery discoveryDoc, AuthState authState)
        {
            var intent = new Intent(context, typeof(TokenActivity));

            intent.PutExtra(EXTRA_AUTH_STATE, authState.JsonSerializeString());
            if (discoveryDoc != null)
            {
                intent.PutExtra(EXTRA_AUTH_SERVICE_DISCOVERY, discoveryDoc.DocJson.ToString());
            }

            return(PendingIntent.GetActivity(context, request.GetHashCode(), intent, 0));
        }
コード例 #4
0
        protected override void OnSaveInstanceState(Bundle outState)
        {
            if (authState != null)
            {
                outState.PutString(KEY_AUTH_STATE, authState.JsonSerializeString());
            }

            if (userInfoJson != null)
            {
                outState.PutString(KEY_USER_INFO, userInfoJson.ToString());
            }
        }
コード例 #5
0
        private async Task <User> exchangeTokens(AuthorizationResponse response)
        {
            TokenResponse tokenResponse = await authorizationService.PerformTokenRequestAsync(response.CreateTokenExchangeRequest());

            authState.Update(tokenResponse, null);
            ICredential credential = new OIDCCredential(authState.JsonSerializeString());

            credentialManager.Store(credential);
            User user = GetUser(credential);

            return(user);
        }
コード例 #6
0
        private PendingIntent CreatePostAuthorizationIntent(Context context, AuthorizationRequest request,
                                                            AuthorizationServiceDiscovery discoveryDoc, AuthState authState)
        {
            var intent = new Intent(context, typeof(MainActivity));

            intent.PutExtra(Constants.AuthStateKey, authState.JsonSerializeString());
            if (discoveryDoc != null)
            {
                intent.PutExtra(Constants.AuthServiceDiscoveryKey, discoveryDoc.DocJson.ToString());
            }

            return(PendingIntent.GetActivity(context, request.GetHashCode(), intent, 0));
        }
コード例 #7
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);

            if (authState == null)
            {
                authState = GetAuthStateFromIntent(Intent);
                AuthorizationResponse  response = AuthorizationResponse.FromIntent(Intent);
                AuthorizationException ex       = AuthorizationException.FromIntent(Intent);
                authState.Update(response, ex);

                if (response != null)
                {
                    Console.WriteLine("Received AuthorizationResponse.");
                    App.OpenIdService.PerformTokenRequest(authState.JsonSerializeString());
                }
                else
                {
                    Console.WriteLine("Authorization failed: " + ex);
                }
            }

            Finish();
        }
コード例 #8
0
 public static void PutAuthStateExtra(this Intent intent, AuthState authState)
 {
     intent.PutExtra(AuthStateKey, authState.JsonSerializeString());
 }