@auth/azure-tables-adapter
An official Azure Table Storage adapter for Auth.js / NextAuth.js.
Installation
npm install next-auth @auth/azure-tables-adapterkeys
const keys: {
account: "account";
accountByUserId: "accountByUserId";
session: "session";
sessionByUserId: "sessionByUserId";
user: "user";
userByEmail: "userByEmail";
verificationToken: "verificationToken";
};Type declaration
account
account: string = "account";accountByUserId
accountByUserId: string = "accountByUserId";session
session: string = "session";sessionByUserId
sessionByUserId: string = "sessionByUserId";user
user: string = "user";userByEmail
userByEmail: string = "userByEmail";verificationToken
verificationToken: string = "verificationToken";TableStorageAdapter()
TableStorageAdapter(client): Adapter- Create a table for authentication data,
authin the example below.
auth.ts
import type { AuthConfig } from "next-auth"
import { TableStorageAdapter } from "@next-auth/azure-tables-adapter"
import { AzureNamedKeyCredential, TableClient } from "@azure/data-tables"
const credential = new AzureNamedKeyCredential(
process.env.AZURE_ACCOUNT,
process.env.AZURE_ACCESS_KEY
)
const authClient = new TableClient(
process.env.AZURE_TABLES_ENDPOINT,
"auth",
credential
)
// For more information on each option (and a full list of options) go to
// https://authjs.dev/reference/core/types#authconfig
export default const authConfig = {
// https://authjs.dev/getting-started/authentication/oauth
providers: [
// ...
],
adapter: TableStorageAdapter(authClient),
// ...
} satisfies AuthConfigEnvironment variable are as follows:
AZURE_ACCOUNT=storageaccountname
AZURE_ACCESS_KEY=longRandomKey
AZURE_TABLES_ENDPOINT=https://$AZURE_ACCOUNT.table.core.windows.net
Parameters
| Parameter | Type |
|---|---|
client | TableClient |
Returns
withoutKeys()
withoutKeys<T>(entity): TType parameters
| Type parameter |
|---|
T |
Parameters
| Parameter | Type |
|---|---|
entity | GetTableEntityResponse<TableEntityResult<T>> |
Returns
T