private bool ValidateInResponseTo() { if (InResponseTo == null && KentorAuthServicesSection.Current.IdentityProviders .Single(idpConfig => idpConfig.Issuer == this.Issuer).AllowUnsolicitedAuthnResponse) { return(true); } else { string sentToIdp; bool knownInResponseToId = PendingAuthnRequests.TryRemove(InResponseTo, out sentToIdp); if (!knownInResponseToId) { return(false); } if (sentToIdp != Issuer) { return(false); } return(true); } }
/// <summary> /// Validates the in response to. /// </summary> /// <returns></returns> private bool ValidateInResponseTo() { if (InResponseTo == null && IdentityProvider.ActiveIdentityProviders[Issuer].AllowUnsolicitedAuthnResponse) { return(true); } else { StoredRequestState storedRequestState; bool knownInResponseToId = PendingAuthnRequests.TryRemove(InResponseTo, out storedRequestState); if (!knownInResponseToId) { return(false); } RequestState = storedRequestState; if (RequestState.Idp.Id != Issuer.Id) { return(false); } return(true); } }