directus-extension-encrypt-attr

1.0.2 • Public • Published

Directus Extension Encrypt Attr

A directus extension to implement encrypt-attr

Get more details on encrypt-attr

intro 3

intro 5

Install extension package

npm i directus-extension-encrypt-attr

Add extension to project

Find and copy folder "directus-extension-encrypt-attr" from "/node_modules" to "/extensions"

Set env for extension

File: .env

EA_KEYS={"default": "32Bytes_long_cryptographically_random_key"}
EA_KEY_ID="default"
NAME Required Default value
EA_KEYS YES
EA_KEY_ID NO default
EA_VERIFY_ID NO

All keys should be 32 bytes long, and cryptographically random. Manage these keys as you would any other sensitive credentials (environment config, vault, keychain). You can generate random keys with this snippet:

Threat model

This is designed to protect you from leaking sensitive user data under very specific scenarios:

  • Full data dump
    • Misplaced unencrypted backups
    • Compromised database host
  • Partial data dump
    • Query injection via unsanitized input

Specifically, this does not provide any protection in cases of a compromised app host, app-level vulnerabilities, or accidentally leaking sensitive data into logs. It is also not a substitute for actually encrypting your backups, sanitizing your input, et cetera.

Interface: Encryption input

Add a new field with "Encryption Input"

intro 1

Display: Hide the real value

To hide the real value in item list In "Display", choose "Formatted Value", then Check "Masked"

intro 4

intro 2

Issues

https://github.com/Drunkenpilot/directus-extension-encrypt-attr/issues

License

BSD-3-Clause

/directus-extension-encrypt-attr/

    Package Sidebar

    Install

    npm i directus-extension-encrypt-attr

    Weekly Downloads

    7

    Version

    1.0.2

    License

    none

    Unpacked Size

    424 kB

    Total Files

    5

    Last publish

    Collaborators

    • betalife