https://github.com/hackclub/mfa
Hack Club's solution for sharing multi-factor authentication (MFA) codes for team accounts
https://github.com/hackclub/mfa
mfa nodejs twilio
Last synced: 4 months ago
JSON representation
Hack Club's solution for sharing multi-factor authentication (MFA) codes for team accounts
- Host: GitHub
- URL: https://github.com/hackclub/mfa
- Owner: hackclub
- Created: 2021-09-10T04:30:46.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2025-01-31T06:45:26.000Z (over 1 year ago)
- Last Synced: 2025-02-21T20:17:30.443Z (over 1 year ago)
- Topics: mfa, nodejs, twilio
- Language: TypeScript
- Homepage:
- Size: 81.1 KB
- Stars: 16
- Watchers: 9
- Forks: 1
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# MFA
Hack Club's solution for sharing [multi-factor authentication
(MFA)](https://en.wikipedia.org/wiki/Multi-factor_authentication) codes for
teams accounts. Often times, shared accounts that require MFA use our personal
phone numbers — which are not accessible to other members of the team. This
solution provides a shared phone number which is accessible to the entire team.
## How does it work?
We have a Twilio number which sends a webhook to this Express (Node) server when
a SMS is received. That message is then parsed for the MFA code which is sent by
a Slack bot to a Slack channel.
## Contribute
```sh
# clone the repo
git clone https://github.com/hackclub/mfa
# enter the directory
cd mfa
# install dependencies
yarn
# run the server
yarn run dev
# the server will refresh on any saved changes
```
Add additional MFA code parsing regex in
[`/src/helpers/parseCode.ts`](/src/helpers/parseCode.ts). The order of the
regexes in the array is important. Regexes will attempted, in order, until one
is successful. For more accurate results, order more specific regexes first.