Options
All
  • Public
  • Public/Protected
  • All
Menu

Class SAML

Hierarchy

  • SAML

Index

Constructors

constructor

Properties

cacheProvider

cacheProvider: CacheProvider

options

options: SAMLOptions

Methods

certToPEM

  • certToPEM(cert: string): string

certsToCheck

  • certsToCheck(): Promise<string[]>

checkAudienceValidityError

  • checkAudienceValidityError(expectedAudience: string, audienceRestrictions: any): any

checkTimestampsValidityError

  • checkTimestampsValidityError(nowMs: number, notBefore: string, notOnOrAfter: string): null | Error

generateAuthorizeRequest

  • generateAuthorizeRequest(req: express.Request, isPassive: boolean | undefined, isHttpPostBinding: boolean, callback: (err: Error | null, r?: undefined | string) => void): void
  • Parameters

    • req: express.Request
    • isPassive: boolean | undefined
    • isHttpPostBinding: boolean
    • callback: (err: Error | null, r?: undefined | string) => void
        • (err: Error | null, r?: undefined | string): void
        • Parameters

          • err: Error | null
          • Optional r: undefined | string

          Returns void

    Returns void

generateInstant

  • generateInstant(): string

generateLogoutRequest

  • generateLogoutRequest(__namedParameters: { user: undefined | ({ ID?: undefined | string; email?: undefined | string; issuer?: undefined | string; mail?: undefined | string; nameID?: string | null; nameIDFormat?: undefined | string; nameQualifier?: undefined | string; sessionIndex?: undefined | string; spNameQualifier?: undefined | string; getAssertion: any; getAssertionXml: any; getSamlResponseXml: any } & {}) }): Promise<string>
  • Parameters

    • __namedParameters: { user: undefined | ({ ID?: undefined | string; email?: undefined | string; issuer?: undefined | string; mail?: undefined | string; nameID?: string | null; nameIDFormat?: undefined | string; nameQualifier?: undefined | string; sessionIndex?: undefined | string; spNameQualifier?: undefined | string; getAssertion: any; getAssertionXml: any; getSamlResponseXml: any } & {}) }
      • user: undefined | ({ ID?: undefined | string; email?: undefined | string; issuer?: undefined | string; mail?: undefined | string; nameID?: string | null; nameIDFormat?: undefined | string; nameQualifier?: undefined | string; sessionIndex?: undefined | string; spNameQualifier?: undefined | string; getAssertion: any; getAssertionXml: any; getSamlResponseXml: any } & {})

    Returns Promise<string>

generateLogoutResponse

  • generateLogoutResponse(req: express.Request, __namedParameters: { ID: string }): string

generateServiceProviderMetadata

  • generateServiceProviderMetadata(decryptionCert: string | null, signingCert: string): string

generateUniqueID

  • generateUniqueID(): string

getAdditionalParams

  • getAdditionalParams(__namedParameters: { body: any; query: ParsedQs }, operation: string, overrideParams?: any): any
  • Parameters

    • __namedParameters: { body: any; query: ParsedQs }
      • body: any
      • query: ParsedQs
    • operation: string
    • Optional overrideParams: any

    Returns any

getAuthorizeForm

  • getAuthorizeForm(req: express.Request, callback: (err: Error | null, data?: undefined | string) => void): void
  • Parameters

    • req: express.Request
    • callback: (err: Error | null, data?: undefined | string) => void
        • (err: Error | null, data?: undefined | string): void
        • Parameters

          • err: Error | null
          • Optional data: undefined | string

          Returns void

    Returns void

getAuthorizeUrl

  • getAuthorizeUrl(req: express.Request, options: { additionalParams: any; passive?: undefined | false | true }, callback: (err: Error | null, url?: undefined | string) => void): void
  • Parameters

    • req: express.Request
    • options: { additionalParams: any; passive?: undefined | false | true }
      • additionalParams: any
      • Optional passive?: undefined | false | true
    • callback: (err: Error | null, url?: undefined | string) => void
        • (err: Error | null, url?: undefined | string): void
        • Parameters

          • err: Error | null
          • Optional url: undefined | string

          Returns void

    Returns void

getCallbackUrl

  • getCallbackUrl(req: express.Request): string

getLogoutResponseUrl

  • getLogoutResponseUrl(req: RequestWithUser, options: { additionalParams: any }, callback: (err: Error | null, url?: undefined | string) => void): void
  • Parameters

    • req: RequestWithUser
    • options: { additionalParams: any }
      • additionalParams: any
    • callback: (err: Error | null, url?: undefined | string) => void
        • (err: Error | null, url?: undefined | string): void
        • Parameters

          • err: Error | null
          • Optional url: undefined | string

          Returns void

    Returns void

getLogoutUrl

  • getLogoutUrl(req: RequestWithUser, options: { additionalParams?: any }, callback: (err: Error | null, url?: undefined | string) => void): Promise<void>
  • Parameters

    • req: RequestWithUser
    • options: { additionalParams?: any }
      • Optional additionalParams?: any
    • callback: (err: Error | null, url?: undefined | string) => void
        • (err: Error | null, url?: undefined | string): void
        • Parameters

          • err: Error | null
          • Optional url: undefined | string

          Returns void

    Returns Promise<void>

getNameID

  • getNameID(__namedParameters: { options: SAMLOptions }, doc: Document, callback: (err: Error | null, nameID?: NameID) => void): any

getProtocol

  • getProtocol(__namedParameters: { protocol: string }): string

hasValidSignatureForRedirect

  • hasValidSignatureForRedirect(__namedParameters: { SigAlg: any; Signature: any }, originalQuery: string): Promise<boolean | void>
  • Parameters

    • __namedParameters: { SigAlg: any; Signature: any }
      • SigAlg: any
      • Signature: any
    • originalQuery: string

    Returns Promise<boolean | void>

initialize

keyToPEM

  • keyToPEM(key: string): string

processValidlySignedAssertion

  • processValidlySignedAssertion(xml: string, samlResponseXml: string, inResponseTo: string | null, callback: ValidateCallback): void

requestToUrl

  • requestToUrl(request: string | null, response: string | null, operation: string, additionalParameters: any, callback: (err: Error | null, url?: undefined | string) => void): void
  • Parameters

    • request: string | null
    • response: string | null
    • operation: string
    • additionalParameters: any
    • callback: (err: Error | null, url?: undefined | string) => void
        • (err: Error | null, url?: undefined | string): void
        • Parameters

          • err: Error | null
          • Optional url: undefined | string

          Returns void

    Returns void

signRequest

  • signRequest(samlMessage: any): void

validateInResponseTo

  • validateInResponseTo(inResponseTo: string | null): Promise<void>

validatePostRequest

  • validatePostRequest(__namedParameters: { SAMLRequest: any }, callback: ValidateCallback): void

validatePostResponse

  • validatePostResponse(__namedParameters: { SAMLResponse: any }, callback: ValidateCallback): void

validateRedirect

  • validateRedirect(container: qs.ParsedQs, originalQuery: string | null, callback: ValidateCallback): void

validateSignature

  • validateSignature(fullXml: string, currentNode: Element, certs: string[]): boolean

validateSignatureForCert

  • validateSignatureForCert(signature: string, cert: string, fullXml: string, currentNode: Element): boolean

validateSignatureForRedirect

  • validateSignatureForRedirect(urlString: string, signature: string, alg: string, cert: string): boolean

verifyIssuer

  • verifyIssuer(__namedParameters: { Issuer: any }): void

verifyLogoutRequest

  • verifyLogoutRequest(__namedParameters: { LogoutRequest: any }): void

verifyLogoutResponse

  • verifyLogoutResponse(__namedParameters: { LogoutResponse: any }): Promise<false | true | void>
  • Parameters

    • __namedParameters: { LogoutResponse: any }
      • LogoutResponse: any

    Returns Promise<false | true | void>

Generated using TypeDoc