コード例 #1
0
        /// <summary>
        /// Is Valid OIDC End Session Response.
        /// </summary>
        public static void Validate(this EndSessionResponse response)
        {
            if (response == null)
            {
                new ArgumentNullException(nameof(response));
            }

            response.State.ValidateMaxLength(IdentityConstants.MessageLength.StateMax, nameof(response.State), response.GetTypeName());
        }
コード例 #2
0
 private void EndSessionResponseHandler(EndSessionResponse response)
 {
     if (!response.HasError)
     {
         if (clientPublicKey.ContainsKey(response.ClientName))
         {
             clientPublicKey.Remove(response.ClientName);
         }
     }
 }
コード例 #3
0
        public async Task <IActionResult> EndSessionResponseAsync(string partyId)
        {
            logger.ScopeTrace("Down, End session response.");
            logger.SetScopeProperty("downPartyId", partyId);

            var sequenceData = await sequenceLogic.GetSequenceDataAsync <OidcDownSequenceData>(false);

            var endSessionResponse = new EndSessionResponse
            {
                State = sequenceData.State,
            };

            logger.ScopeTrace($"End session response '{endSessionResponse.ToJsonIndented()}'.");
            var nameValueCollection = endSessionResponse.ToDictionary();

            logger.ScopeTrace($"Redirect Uri '{sequenceData.RedirectUri}'.");
            logger.ScopeTrace("Down, OIDC End session response.", triggerEvent: true);

            await sequenceLogic.RemoveSequenceDataAsync <OidcDownSequenceData>();

            await formActionLogic.RemoveFormActionSequenceDataAsync();

            return(await nameValueCollection.ToRedirectResultAsync(sequenceData.RedirectUri));
        }
コード例 #4
0
 //Logout Error
 public void OnErrorLogout(EndSessionResponse pLogoutResponse)
 {
     Debug.Log("Error Logout");
 }
コード例 #5
0
 //Logout Sucessful
 public void OnSucessLogout(EndSessionResponse pLogoutResponse)
 {
     PlayerManager.Instance.ClearCache();
     SetScreen(Screen.LOGIN);
 }