fleet/website/views/emails
Eric 4fd1efe98a
Website: Add API to send signed CSR emails (#8408)
This pull request relies on the `mdm-gen-cert` command from
https://github.com/fleetdm/fleet/pull/8884.
Closes: https://github.com/fleetdm/fleet/issues/8223

Changes:
- Updated the deploy Fleet website workflow to:
   - Add Go as a dependency
   - Build the mdm-gen-cert binary in `/website/.tools/`
   - add the `/.tools/` folder to the Heroku app
- Added `deliver-apple-csr.js` -  an API that:
- can be called by making a `POST` request to
`/api/v1/deliver-apple-csr`
   - accepts `csr` as an input
- runs the `mdm-gen-cert` command with the `csr` set as an environment
variable
- returns an `invalidEmailDomain` response if the user's email domain is
in the array of banned email domains.
- saves the users organization and email address to the website's
database
- Sends an email to the requesting user's email address with the signed
CSR attached as a text file named `apple-apns-request.txt`
   - Posts a message to a channel in the Fleet Slack.
- Added a new model: `CertificateSigningRequests` that contains two
required attributes: `emailAddress` and `organization`
- Added a new email template `email-signed-csr-for-apns`
- Updated routes, policies, eslintrc, and rebuilt cloud-sdk


Before this can be merged, we will need to:
- [x] Add new config variables in Heroku
   - [x] `sails.config.custom.mdmVendorCertPem` 
   - [x] `sails.config.custom.mdmVendorKeyPem`
   - [x] `sails.config.custom.mdmVendorKeyPassphrase`
   - [x] `sails.config.custom.slackWebhookUrlForMDMSignups`
- [x] Add the `CertificateSigningRequests` model to the website's
database
2023-01-19 14:43:14 -06:00
..
internal Move fleetdm.com into main Fleet repo (#83) 2020-12-02 14:48:03 -06:00
newsletter Website: Add script for creating HTML email partials from Markdown articles (#7574) 2022-12-05 16:30:24 -06:00
email-order-confirmation.ejs Add customer portal and license dispenser to fleetdm.com (#3546) 2022-01-04 20:02:42 -06:00
email-reset-password.ejs Add customer portal and license dispenser to fleetdm.com (#3546) 2022-01-04 20:02:42 -06:00
email-signed-csr-for-apns.ejs Website: Add API to send signed CSR emails (#8408) 2023-01-19 14:43:14 -06:00
email-subscription-renewal-confirmation.ejs Website: Fleet Premium subscription renewals (#9200) 2023-01-06 18:36:29 -06:00
email-upcoming-subscription-renewal.ejs Website: Fleet Premium subscription renewals (#9200) 2023-01-06 18:36:29 -06:00
email-verify-account.ejs Add customer portal and license dispenser to fleetdm.com (#3546) 2022-01-04 20:02:42 -06:00
email-verify-new-email.ejs Website: Add script for creating HTML email partials from Markdown articles (#7574) 2022-12-05 16:30:24 -06:00