跳至主要內容

MastraAuthClerk 類別

MastraAuthClerk 類別使用 Clerk 為 Mastra 應用程式提供身分驗證。它會使用 Clerk 核發的 JWT token 驗證傳入要求,並透過 auth 選項與 Mastra 伺服器整合。

使用範例
「使用範例」的直接連結

src/mastra/index.ts
import { Mastra } from '@mastra/core'
import { MastraAuthClerk } from '@mastra/auth-clerk'

export const mastra = new Mastra({
server: {
auth: new MastraAuthClerk({
jwksUri: process.env.CLERK_JWKS_URI,
publishableKey: process.env.CLERK_PUBLISHABLE_KEY,
secretKey: process.env.CLERK_SECRET_KEY,
}),
},
})

建構函式參數
「建構函式參數」的直接連結

publishableKey?:

string
= process.env.CLERK_PUBLISHABLE_KEY
你的 Clerk publishable key。可在 Clerk Dashboard 的 API Keys 中找到。

secretKey?:

string
= process.env.CLERK_SECRET_KEY
你的 Clerk secret key。用於伺服器端身分驗證與 token 驗證。

jwksUri?:

string
= process.env.CLERK_JWKS_URI
你的 Clerk 應用程式所提供的 JWKS URI。用於驗證 JWT 簽章。

name?:

string
身分驗證 Provider 執行個體的自訂名稱。

authorizeUser?:

(user: User, request: HonoRequest) => Promise<boolean> | boolean
自訂授權函式,用於判斷是否應授予使用者存取權。此函式會在 token 驗證後呼叫。預設允許所有已通過身分驗證的使用者。

MastraAuthClerk 類別