Files
medusa-store/www/apps/resources/app/commerce-modules/auth/auth-providers/page.mdx
Shahed Nasser 76bc21ff25 docs: tax provider updates for next release (#12431)
* docs: tax provider updates for next release

* change images

* fix vale error

* fix vale errors

* generate
2025-05-13 14:13:17 +03:00

74 lines
2.1 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import { CardList } from "docs-ui"
export const metadata = {
title: `Auth Module Provider`,
}
# {metadata.title}
In this guide, youll learn about the Auth Module Provider and how it's used.
## What is an Auth Module Provider?
An Auth Module Provider handles authenticating customers and users, either using custom logic or by integrating a third-party service.
For example, the EmailPass Auth Module Provider authenticates a user using their email and password, whereas the Google Auth Module Provider authenticates users using their Google account.
### Auth Providers List
<CardList
items={[
{
title: "Emailpass",
href: "/commerce-modules/auth/auth-providers/emailpass"
},
{
title: "Google",
href: "/commerce-modules/auth/auth-providers/google"
},
{
title: "GitHub",
href: "/commerce-modules/auth/auth-providers/github"
},
]}
/>
---
## How to Create an Auth Module Provider?
An Auth Module Provider is a module whose service extends the `AbstractAuthModuleProvider` imported from `@medusajs/framework/utils`.
The module can have multiple auth provider services, where each is registered as a separate auth provider.
Refer to the [Create Auth Module Provider](/references/auth/provider) guide to learn how to create an Auth Module Provider.
---
## Configure Allowed Auth Providers of Actor Types
By default, users of all actor types can authenticate with all installed Auth Module Providers.
To restrict the auth providers used for actor types, use the [authMethodsPerActor option](!docs!/learn/configurations/medusa-config#httpauthMethodsPerActor) in Medusa's configurations:
```ts title="medusa-config.ts"
module.exports = defineConfig({
projectConfig: {
http: {
authMethodsPerActor: {
user: ["google"],
customer: ["emailpass"],
},
// ...
},
// ...
},
})
```
<Note title="Important">
When you specify the `authMethodsPerActor` configuration, it overrides the default. So, if you don't specify any providers for an actor type, users of that actor type can't authenticate with any provider.
</Note>