Skip to content

Invalid well-known URL generated when issuer has trailing Slash #217

@BeryJu

Description

@BeryJu

Expected Behavior

(Originating from netbirdio/netbird#452)

authentik (goauthentik.io) has an issuer with a trailing slash, which causes issues with this function

const fullUrl = `${openIdIssuerUrl}/${WELL_KNOWN_PATH}/${OPENID_CONFIGURATION}`;
,

as it'll generate a URL like https://id.beryju.org/application/o/netbird//.well-known/openid-configuration (notice the double slash)

[REQUIRED] Describe expected behavior

The function should check if the issuer has a trailing slash and not append an extra one. I'm not sure if there are any native JavaScript ways to merge URL paths

Describe the problem

[REQUIRED] Actual Behavior

Because of the double-slash, the request fails

[REQUIRED] Steps to reproduce the behavior

Use this Library with any OpenID Connect provider that uses trailing slashes in their issue (for example authentik)

[REQUIRED] Environment

  • AppAuth-JS version: 1.3.1
  • AppAuth-JS Environment (Node, Browser (UserAgent), ...): 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36'
  • Source code snippts (inline or JSBin) N/A

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions