Auth Module Options
In this document, you'll learn about the options of the Auth Module.
providers
const modules = {
// ...
auth: {
resolve: "@medusajs/auth",
options: {
providers: [
{
name: "emailpass",
scopes: {
store: {},
admin: {},
},
},
{
name: "google",
scopes: {
admin: {
clientID: process.env.GOOGLE_CLIENT_ID,
clientSecret: process.env.GOOGLE_CLIENT_SECRET,
callbackURL: process.env.GOOGLE_CALLBACK_URL,
successRedirectUrl:
process.env.GOOGLE_SUCCESS_REDIRECT_URL,
},
},
},
],
},
},
}
The providers
option is an array of objects indicating the auth providers to register, their scopes, and configurations.
Each object accepts the following properties:
name
: The provider's name, which is set in the auth provider class'sPROVIDER
attribute. For example,emailpass
orgoogle
.scopes
: An object of scopes. The keys are a scope's name, which in the Medusa application would be eitheradmin
orstore
. The value is an object of configurations for that scope. Each provider accepts different scope configurations as detailed below.
emailpass Scope Configurations
Configuration | Description | Required | Default |
---|---|---|---|
| An object of configurations to use when hashing the user's password. Refer to scrypt-kdf's documentation for accepted options. | No |
|
google Scope Configurations
Follow this Google documentation to enable Google's APIs and retrieve the necessary credentials.
Configuration | Description | Required | Default |
---|---|---|---|
| A string indicating the Google API Client ID. | Yes | - |
| A string indicating the Google Client Secret. | Yes | - |
| A string indicating the URL to redirect to in your app after the user completes their authentication in Google. The Medusa application provides the API route | Yes | - |
| A string indicating the URL to redirect to in your app after the authentication has been successful. If not provided, the Medusa application's callback route just returns a JSON with the JWT token of the auth user. | No | - |
Environment Variables
Make sure to add the necessary environment variables for the above options in .env
:
Auth CORS
The Medusa application's authentication API routes are defined under the /auth
prefix that requires setting the auth_cors
configuration. So, before using these routes, make sure to set that configuration.
Refer to Medusa's configuration guide for more details.