@aws-amplify/auth-construct-alpha

中文文档
0.6.1发布于 2024/04/23Apache-2.0TypeScriptESM + CJS近 30 天下载 7.9万

这个软件包将一个L3 CDK Constructure进行维系,它能够更快,更容易,安全地进行由Amazon Cognito提供动力的应用认证和授权. 放大 Auth 允许您用一个完全管理的用户目录快速设置安全认证流程 。 控制WHA

中文使用文档
文档目录5 节
  1. 实例
  2. 带有默认设置的简单电子邮件登录
  3. 使用定制多要素设置的电子邮件登录
  4. 外部登录提供者自定义的电子邮件和电话登录
  5. 自定义用户属性

放大Auth 构造

这个软件包将一个L3 CDK Constructure进行维系,它能够更快,更容易,安全地进行由Amazon Cognito提供动力的应用认证和授权. 放大 Auth 允许您用一个完全管理的用户目录快速设置安全认证流程 。 控制用户在您的移动和网络应用程序中可以访问哪些内容,并具有Amplify Auth的内置授权能力.

使用此构造的主要方法是用配置对象来引用. 您可以通过将单个设置作为属性传递到 AmplifyAuth 构造来声明您的认证 .

注:只列出一个实例 AmplifyAuth 构造可以在此时的CDK合成中被引用.

实例

带有默认设置的简单电子邮件登录

在此示例中, 您将创建一个简单的堆栈, 并启用电子邮件登录( 默认) 。 应用此功能将创建一个用户Pool、用户PoolClient、身份Pool以及认证/认证的IAM角色.

import { App, Stack } from 'aws-cdk-lib';
import { AmplifyAuth } from '@aws-amplify/auth-construct-alpha';

const app = new App();
const stack = new Stack(app, 'AuthStack');

new AmplifyAuth(stack, 'Auth');

使用定制多要素设置的电子邮件登录

在此示例中, 您将创建一个简单的堆栈, 并启用电子邮件登录, 以及定制的多因子认证( MFA) 设置 .

import { App, Stack } from 'aws-cdk-lib';
import { AmplifyAuth } from '@aws-amplify/auth-construct-alpha';

const app = new App();
const stack = new Stack(app, 'AuthStack');

new AmplifyAuth(stack, 'Auth', {
  loginWith: {
    email: true,
  },
  multifactor: {
    mode: 'OPTIONAL',
    sms: {
      smsMessage: (code: string) => `Your verification code is ${code}`,
    },
    totp: false,
  },
});

外部登录提供者自定义的电子邮件和电话登录

在此示例中, 您将创建一个包含电子邮件、 电话和外部登录提供者的堆栈 。 此外,您还可以自定义电子邮件和电话验证信息.

import { App, Stack, SecretValue } from 'aws-cdk-lib';
import { AmplifyAuth } from '@aws-amplify/auth-construct-alpha';

const app = new App();
const stack = new Stack(app, 'AuthStack');

new AmplifyAuth(stack, 'Auth', {
  loginWith: {
    email: {
      verificationEmailStyle: 'CODE',
      verificationEmailBody: (code: string) =>
        `Your verification code is ${code}.`,
      verificationEmailSubject: 'My custom email subject',
    },
    phone: {
      verificationMessage: (code: string) =>
        `Your verification code is ${code}.`,
    },
    externalProviders: {
      google: {
        clientId: 'googleClientId',
        // see https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.SecretValue.html
        clientSecret: SecretValue.unsafePlainText('googleClientSecret'),
      },
      facebook: {
        clientId: 'facebookClientId',
        clientSecret: 'facebookClientSecret',
      },
      signInWithApple: {
        clientId: 'appleClientId',
        keyId: 'appleKeyId',
        privateKey: 'applePrivateKey',
        teamId: 'appleTeamId',
      },
      loginWithAmazon: {
        clientId: 'amazonClientId',
        clientSecret: 'amazonClientSecret',
      },
      oidc: {
        clientId: 'oidcClientId',
        clientSecret: 'oidcClientSecret',
        issuerUrl: 'oidcIssuerUrl',
        name: 'oidcProviderName',
      },
      saml: {
        name: 'samlProviderName',
        metadata: {
          metadataContent: 'samlMetadataContent',
          metadataType: 'FILE',
        },
      },
    },
  },
});

自定义用户属性

在此示例中,您会自定义用户Pool中每个用户所需的一组属性 .

import { App, Stack } from 'aws-cdk-lib';
import { AmplifyAuth } from '@aws-amplify/auth-construct-alpha';

const app = new App();
const stack = new Stack(app, 'AuthStack');

new AmplifyAuth(stack, 'Auth', {
  loginWith: { email: true },
  userAttributes: {
    address: {
      mutable: false,
    },
    familyName: {
      required: true,
    },
  },
});

版本与发布记录

@aws-amplify/auth-construct-alpha 共发布 57 个版本,首次发布于 2023/08/23;过去 12 个月发布了 0 个版本。

版本发布日期距今
0.6.1latest2024/04/232 年前
0.6.02024/04/202 年前
0.6.0-beta.13beta2024/04/192 年前
0.6.0-beta.122024/04/172 年前
0.6.0-beta.112024/04/162 年前
0.6.0-beta.102024/04/122 年前

其他发布通道:alpha → 0.1.1-alpha.0,test → 0.0.0-test-20240327212405,beta → 0.6.0-beta.13。

关于 @aws-amplify/auth-construct-alpha 的常见问题

@aws-amplify/auth-construct-alpha 是什么?

这个软件包将一个L3 CDK Constructure进行维系,它能够更快,更容易,安全地进行由Amazon Cognito提供动力的应用认证和授权. 放大 Auth 允许您用一个完全管理的用户目录快速设置安全认证流程 。 控制WHA

如何安装 @aws-amplify/auth-construct-alpha?

在项目目录运行 npm install @aws-amplify/auth-construct-alpha,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:constructs(^10.0.0)、aws-cdk-lib(^2.127.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@aws-amplify/auth-construct-alpha 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@aws-amplify/auth-construct-alpha 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@aws-amplify/auth-construct-alpha 可以商用吗?

@aws-amplify/auth-construct-alpha 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@aws-amplify/auth-construct-alpha 的下载量有多少?

根据 npm 官方下载统计,@aws-amplify/auth-construct-alpha 在 2026/10/07 – 2026/11/05 这 30 天内被下载 78,506 次,日均约 2,617 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@aws-amplify/auth-construct-alpha 还在维护吗?

最新版本 0.6.1 发布于 2024/04/23(2 年前);至今共发布 57 个版本,其中过去 12 个月发布了 0 个;首次发布于 2023/08/23。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。