UNPKG

saml-login

Version:
28 lines (27 loc) 1.43 kB
import { Profile, AuthenticationOptions, DelegationOptions, ValidationOptions, AuthenticationResponseMetadata, SamlRequestMetadata } from "./types"; declare class SamlLogin { private requestIdExpirationPeriodMs; generateDelegationUrl(options: DelegationOptions): Promise<string>; generateAuthenticationUrl(options: AuthenticationOptions): Promise<string>; validateSignature(fullXml: string, currentNode: Element, certs: string[]): boolean; parseSamlRequestMetadata(samlEncodedBody: string): Promise<SamlRequestMetadata>; getSamlAssertionMetadata(samlEncodedBody: string): Promise<AuthenticationResponseMetadata>; validatePostResponse(options: ValidationOptions, samlEncodedBody: string): Promise<{ profile?: Profile | null; loggedOut?: boolean; }>; private processValidlySignedAssertion; private checkTimestampsValidityError; private checkAudienceValidityError; /** * Process max age assertion and use it if it is more restrictive than the NotOnOrAfter age * assertion received in the SAMLResponse. * * @param maxAssertionAgeMs Max time after IssueInstant that we will accept assertion, in Ms. * @param notOnOrAfter Expiration provided in response. * @param issueInstant Time when response was issued. * @returns {*} The expiration time to be used, in Ms. */ private processMaxAgeAssertionTime; } export default SamlLogin;