Skip to main content

Custom OAuth

SetherAuth supports custom OAuth providers if they:

  • implement the standard 3-legged OAuth protocol
  • the return values of Token URL and UserInfo URL must conform to the format specified by SetherAuth

To create a custom OAuth provider, go to the Connections, click the + icon and select the Custom OAuth connection.

Fill in the following details:

  • Client ID and Client Secret from your custom OAuth provider

  • Auth URL : the custom provider's OAuth login page address

  • Token URL : the API endpoint for obtaining the Access Token

    The custom provider should return at least the following information:

    {
    "access_token": "eyJhbGciOiJSUzI1NiIsImtpZCI6Ixxxxxxxxxxxxxx",
    "refresh_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6xxxxxxxxxxxxxx",
    "token_type": "Bearer",
    "expires_in": 10080,
    "scope": "openid profile email"
    }
  • UserInfo URL : the API endpoint for obtaining user information using the Access Token

    The custom provider should return at least the following information:

    {
    "name": "admin",
    "preferred_username": "Admin",
    "email": "admin@example.com",
    "picture": "https://...."
    }
  • Scope : the scope parameter carried when accessing the Auth URL, and you should fill it in as per the custom provider's requirements.

  • Logo URL : the logo URL of the custom provider to be displayed on the SetherAuth Login page

User Attribute Mapping

Here you map the attributes returned from the UserInfo URL to SetherAuth user attributes.