public ISamlToken VerifyToken(IRequest request, string[] tokenString) { var token = (new TokenFormatter()).Parse(tokenString); _requestsVerifier.VerifyAgeAndRepeatOnNewRequest(token.Nonce); ISamlToken result = null; try { result = new SamlToken(token.SamlToken); } catch (Exception exc) { throw new AuthException(exc.Message, exc); } token.VerifyBodyHash(request); token.VerifySignature(request, result.ConfirmationCertificate); return(result); }
public static SessionToken Issue(ISamlToken samlToken) { if (samlToken == null) { throw new ArgumentNullException(nameof(samlToken)); } SessionToken sessionToken = null; // Create output SamlToken Instance with parsed UserName sessionToken = new SessionToken { UserName = samlToken.SubjectNameId, SessionId = Guid.NewGuid().ToString() }; // Register in Sessions Sessions.Instance.RegisterSession(sessionToken); return(sessionToken); }