0
Fork 0
mirror of https://github.com/logto-io/logto.git synced 2024-12-23 20:33:16 -05:00
logto/packages/connector-aliyun-dm
2022-07-01 18:47:14 +08:00
..
docs chore(connectors): config template md files to json files (#987) 2022-05-31 12:58:24 +08:00
src refactor(connector-*): load config template and readme contents while initialization (#1252) 2022-06-27 10:00:37 +08:00
jest.config.ts chore(connectors): remove unused jest-matcher-specific-error in connector packages (#1024) 2022-06-02 12:03:11 +08:00
logo.svg feat(core,connectors): update Aliyun logo and add logo_dark to Apple, Github (#1194) 2022-06-23 11:12:29 +08:00
package.json ci: publish workflow (#1342) 2022-07-01 18:47:14 +08:00
README.md docs(connector-aliyun-dm): add Aliyun DM README.md (en-US) (#1263) 2022-06-30 00:01:55 +08:00
tsconfig.base.json
tsconfig.build.json
tsconfig.json chore(connectors): remove unused jest-matcher-specific-error in connector packages (#1024) 2022-06-02 12:03:11 +08:00
tsconfig.test.json test: allow JS in tests (#903) 2022-05-20 13:02:36 +08:00

Aliyun direct mail connector

Aliyun is a primary cloud service provider in Asia, offering many cloud services, including DM (direct mail). Aliyun DM Connector is a plugin provided by the Logto team to call the Aliyun DM service APIs, with the help of which Logto end-users can register and sign in to their Logto account via mail verification code (or in other words, passcode).

Register Aliyun account

Go to the Aliyun website and register your Aliyun account if you don't have one.

Enable and configure Aliyun Direct Mail

Go to the DM service console page and sign in. Enable the Direct Mail service by clicking the Apply to enable button on the top left of the page and begin the configuration process.

Starting from the DM admin console page, you should:

  1. Go to Email Domains from the sidebar and add New Domain following the instructions.
  2. Customize Sender Addresses and Email Tags respectively.

After finishing setup, there are two different ways to test:

  • Go to the DirectMail Overview page, find Operation Guide at the bottom of the page, and click on Send Emails. You will find all the different kinds of testing methods.
  • Follow the path Send Emails -> Email Tasks in the sidebar to create a testing task.

Compose the connector JSON

  1. From the DM admin console page, hover on your avatar in the top right corner and go to "AccessKey Management", and click "Create AccessKey". You will get an "AccessKey ID" and "AccessKey Secret" pair after finishing security verification. Please keep them properly.
  2. Go to the Sender Addresses or Email Tags tab you just visited from the DM admin console page, you can find "Sender Address" or "Email Tag" easily.
  3. Fill out the Aliyun DM Connector settings:
    • Fill out the accessKeyId and accessKeySecret fields with access key pairs you've got from step 1.
    • Fill out the accountName and fromAlias field with "Sender Address" and "Email Tag" which were found in step 2. All templates will share this signature name.
    • You can add multiple DM connector templates for different cases. Here is an example of adding a single template:
      • Fill out the subject field, which will work as title of the sending email.
      • Fill out the content field with arbitrary string-type contents. Do not forget to leave {{code}} placeholder for random passcode.
      • Fill out usageType field with either Register, SignIn or Test for different use cases.

Here is an example of Aliyun DM connector config JSON.

{
    "accessKeyId": "<your-access-key-id>",
    "accessKeySecret": "<your-access-key-secret>",
    "accountName": "<noreply@logto.io>",
    "fromAlias": "<logto>",
    "templates": [
        {
            "subject": "<register-template-subject>",
            "content": "<Logto: Your passcode is {{code}}. (regitser template)>",
            "usageType": "Register"
        },
        {
            "subject": "<sign-in-template-subject>",
            "content": "<Logto: Your passcode is {{code}}. (sign-in template)>",
            "usageType": "SignIn"
        },
        {
            "subject": "<test-template-subject>",
            "content": "<Logto: Your passcode is {{code}}. (test template)>",
            "usageType": "Test"
        },
    ]
}

Config types

Name Type
accessKeyId string
accessKeySecret string
accountName string
fromAlias string
templates Template[]
Template Properties Type Enum values
subject string N/A
content string N/A
usageType enum string 'Register' | 'SignIn' | 'Test'