1.2 KiB
1.2 KiB
- User submits KYC document via a web form
- Web form automatically encrypts document to a key held in KMS (with offline backups)
- Encrypted documents are submitted to an API gateway hook that triggers a lambda job which places the documents directly into an s3 bucket.
- A support agent opens the KYC review interface and clicks a document to decrypt.
- The support agent browser automatically generates a random encryption public key, and public key and the ID of the requested document they wish to decrypt to API Gateway
- API Gateway launches a lambda job which hashes the document request with a random challenge and returns it to the browser
- The browser prompts the support agent to tap their Yubikey which signs the challenge.
- The browser sends the signed challenge back to API Gateway.
- API gateway passes the signed document request payload to a lambda job which has access to the KMS role to use the KYC decryption key.
- Lambda job decrypts the one document, and then encrypts it to the encryption key of the request and returns it to the support agent browser.
- Document is decrypted and displayed in support agent browser.
- Agent reviews document and it is automatically deleted locally when closed.