🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more

workmail-spam-filter

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

workmail-spam-filter

CDK library for spam filter lambda with workmail

0.1.7
latest
73

Supply Chain Security

100

Vulnerability

83

Quality

76

Maintenance

100

License

Version published
Weekly downloads
3
50%
Maintainers
1
Weekly downloads
 
Created

Spamfilter lambda

CDK construct to create a synchronous lambda rule for workmail inbound messages.

It deploys a lambda and the permission for workmail to invoke it.

Usage

In your project add it as a dependency:

npm i --save workmail-spam-filter

Reference it in the code:

import { WorkmailSpamFilterStack } from 'workmail-spam-filter'

new WorkmailSpamFilterStack(app, 'WorkmailSpamFilterStack', {
    env: { account: '1234567890', region: 'eu-west-1' },
    organization: "m-123456789",
    accountId: "1234567890"
});

To create an initial empty configuration for the classifier, run

npx workmail-spam-filter@latest init

and it will create a config.json in the folder db which will be deployed to S3.

As this file will be empty, you might want to train the classifier with your own data.

npx workmail-spam-filter@latest train 

This command uses the spam.json and valid.json as sources for training, both containing string arrays and writes it to config.json, reusing its existing content.

And then deploy it:

cdk deploy

Once deployed to the same account and region as the workmail organization, you can reference it on the UI as an synchrounous lambda inbound rule. Spam messages will be moved to the junk folder.

TODO

  • Add an S3 bucket to reference naive bayes classifier config from
  • Add CLI to create initial config
  • Add automation to train on own data
  • Exclude stopwords during training and classifying
  • Check the body of the message not just the subject
  • Add the ability to bounce spam messages

FAQs

Package last updated on 27 Jan 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts