{"_id":"@aikitori/node-red-dashboard-2-authelia-auth","_rev":"3-2f970a0a8b765959867711abd52a0ab7","name":"@aikitori/node-red-dashboard-2-authelia-auth","dist-tags":{"latest":"0.1.2"},"versions":{"0.0.1":{"name":"@aikitori/node-red-dashboard-2-authelia-auth","version":"0.0.1","keywords":["node-red","node-red-dashboard","authelia","auth","authentication"],"author":{"name":"Fabian"},"license":"AGPL-3.0-or-later","_id":"@aikitori/node-red-dashboard-2-authelia-auth@0.0.1","maintainers":[{"name":"kitori","email":"kitori@mailbox.org"}],"homepage":"https://github.com/aikitori/node-red-dashboard-2-authelia-auth#readme","bugs":{"url":"https://github.com/aikitori/node-red-dashboard-2-authelia-auth/issues"},"dist":{"shasum":"4f4385e378390c38c3630b9dd36ad8426e358a15","tarball":"https://registry.npmjs.org/@aikitori/node-red-dashboard-2-authelia-auth/-/node-red-dashboard-2-authelia-auth-0.0.1.tgz","fileCount":4,"integrity":"sha512-2upTNC01RC2uVVTa90yVP8Bx01xdVvBotJmFDsRZQYRgX3X6vAcyspE5H38ib+6Hv76Ar9DiYSwMtL7ZEa0YEg==","signatures":[{"sig":"MEQCIAdXyogN0dV+jQmskwYh7+4F+B0rXm9v3t8gPe9qq6w7AiBIli2ecx2RcYfxSlXIvrhhmq49jckbb0sUal5fYGfmww==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":5995},"main":"index.js","engines":{"node":">=16.20"},"gitHead":"712678b2a1f014f0c578c9253522dbb25ad8792b","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"kitori","email":"kitori@mailbox.org"},"node-red":{"plugins":{"node-red-dashboard-2-authelia-auth":"index.js"},"version":">=3.1"},"repository":{"url":"git+https://github.com/aikitori/node-red-dashboard-2-authelia-auth.git","type":"git"},"_npmVersion":"10.7.0","description":"Dashboard Auth with Authelia","directories":{},"_nodeVersion":"18.20.3","dependencies":{"@flowfuse/node-red-dashboard":"^1.10"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/node-red-dashboard-2-authelia-auth_0.0.1_1721991033098_0.21622072260050929","host":"s3://npm-registry-packages"}},"0.1.0":{"name":"@aikitori/node-red-dashboard-2-authelia-auth","version":"0.1.0","keywords":["node-red","node-red-dashboard","authelia","auth","authentication"],"author":{"name":"Fabian"},"license":"AGPL-3.0-or-later","_id":"@aikitori/node-red-dashboard-2-authelia-auth@0.1.0","maintainers":[{"name":"kitori","email":"kitori@mailbox.org"}],"homepage":"https://github.com/aikitori/node-red-dashboard-2-authelia-auth#readme","bugs":{"url":"https://github.com/aikitori/node-red-dashboard-2-authelia-auth/issues"},"dist":{"shasum":"d3c00100420857f154b65a9d9ca517bc7b0accf0","tarball":"https://registry.npmjs.org/@aikitori/node-red-dashboard-2-authelia-auth/-/node-red-dashboard-2-authelia-auth-0.1.0.tgz","fileCount":5,"integrity":"sha512-9FFBxWEBQemOUliC9ormFM0DPPbJTNnj4FzEJ3EpYQYvOMYvoWoTcOIddJuanQmcw2gdgX9tUChGJV3w9Nmuvw==","signatures":[{"sig":"MEUCICJC40wJKLA0iI8VcUeSqNPKgjGs/n05u7ua9u4rKH1SAiEA91q/Q0E7lWbWCFz/Zj/GV6ZG0cSpGxmN5CdpnyQtL9o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":6149},"main":"index.js","engines":{"node":">=16.20"},"gitHead":"a38de0096f3f2f5814b1e0f6b555b1fe4427c8a4","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"kitori","email":"kitori@mailbox.org"},"node-red":{"plugins":{"node-red-dashboard-2-authelia-auth":"index.js"},"version":">=3.1"},"repository":{"url":"git+https://github.com/aikitori/node-red-dashboard-2-authelia-auth.git","type":"git"},"_npmVersion":"10.7.0","description":"Dashboard Auth with Authelia","directories":{},"_nodeVersion":"18.20.3","dependencies":{"@flowfuse/node-red-dashboard":"^1.10"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/node-red-dashboard-2-authelia-auth_0.1.0_1721995742537_0.3537000798424297","host":"s3://npm-registry-packages"}},"0.1.1":{"name":"@aikitori/node-red-dashboard-2-authelia-auth","version":"0.1.1","keywords":["node-red","node-red-dashboard","authelia","auth","authentication"],"author":{"name":"Fabian"},"license":"AGPL-3.0-or-later","_id":"@aikitori/node-red-dashboard-2-authelia-auth@0.1.1","maintainers":[{"name":"kitori","email":"kitori@mailbox.org"}],"homepage":"https://github.com/aikitori/node-red-dashboard-2-authelia-auth#readme","bugs":{"url":"https://github.com/aikitori/node-red-dashboard-2-authelia-auth/issues"},"dist":{"shasum":"f4bfe05379ab2757ee904638778e608325bb4a50","tarball":"https://registry.npmjs.org/@aikitori/node-red-dashboard-2-authelia-auth/-/node-red-dashboard-2-authelia-auth-0.1.1.tgz","fileCount":5,"integrity":"sha512-Qyx9YI1/KynFzEXxUSaYaEiANVPsLqr/7lS3UN8uTwJsK5GwoAihfBCpBjPlaPTV3yNv0DO5SXWI12GXkm01pQ==","signatures":[{"sig":"MEQCIBUtXYktshY+q9e9TMpP+EcON1aZzZfOcsZm+9POZPYFAiAEupv24HMXl689NJ8w3DKq40iMJzVsyItzvGJX72VSGQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":6193},"main":"index.js","engines":{"node":">=16.20"},"gitHead":"536c9d7c956877454184642d0ce952432cac085f","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"kitori","email":"kitori@mailbox.org"},"node-red":{"plugins":{"node-red-dashboard-2-authelia-auth":"index.js"},"version":">=3.1"},"repository":{"url":"git+https://github.com/aikitori/node-red-dashboard-2-authelia-auth.git","type":"git"},"_npmVersion":"10.7.0","description":"Dashboard Auth with Authelia","directories":{},"_nodeVersion":"18.20.3","dependencies":{"@flowfuse/node-red-dashboard":"^1.10"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/node-red-dashboard-2-authelia-auth_0.1.1_1722236749974_0.9854916136141618","host":"s3://npm-registry-packages"}},"0.1.2":{"name":"@aikitori/node-red-dashboard-2-authelia-auth","version":"0.1.2","description":"Dashboard Auth with Authelia","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Fabian"},"license":"AGPL-3.0-or-later","node-red":{"version":">=3.1","plugins":{"node-red-dashboard-2-authelia-auth":"index.js"}},"keywords":["node-red","node-red-dashboard","authelia","auth","authentication"],"dependencies":{"@flowfuse/node-red-dashboard":"^1.10"},"engines":{"node":">=16.20"},"repository":{"type":"git","url":"git+https://github.com/aikitori/node-red-dashboard-2-authelia-auth.git"},"_id":"@aikitori/node-red-dashboard-2-authelia-auth@0.1.2","gitHead":"3c618b7cda55859bc107f76d479f7bc24172ec9a","bugs":{"url":"https://github.com/aikitori/node-red-dashboard-2-authelia-auth/issues"},"homepage":"https://github.com/aikitori/node-red-dashboard-2-authelia-auth#readme","_nodeVersion":"18.20.3","_npmVersion":"10.7.0","dist":{"integrity":"sha512-Ny1o454M37fag+aH+iQWy/XMQp12gHeO8aO9Ne4PQOS90nv7XUJEXR/L8izAeDy/5qzHXwRzBUgSwTn2OXrOdg==","shasum":"f7641525ff494e3c2970a39bb694504c68e66b40","tarball":"https://registry.npmjs.org/@aikitori/node-red-dashboard-2-authelia-auth/-/node-red-dashboard-2-authelia-auth-0.1.2.tgz","fileCount":6,"unpackedSize":40776,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBKfPjGE95RJvGcIya49Pdlog34xLk7erVKlh0q9+o+AAiEA0clYY7d1g27he6Dz7fQv1cW8vfiz/qCBpFG4qur4UdA="}]},"_npmUser":{"name":"kitori","email":"kitori@mailbox.org"},"directories":{},"maintainers":[{"name":"kitori","email":"kitori@mailbox.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/node-red-dashboard-2-authelia-auth_0.1.2_1723201572873_0.20831378745397955"},"_hasShrinkwrap":false}},"time":{"created":"2024-07-26T10:50:32.973Z","modified":"2024-08-09T11:06:13.254Z","0.0.1":"2024-07-26T10:50:33.247Z","0.1.0":"2024-07-26T12:09:02.737Z","0.1.1":"2024-07-29T07:05:50.137Z","0.1.2":"2024-08-09T11:06:13.051Z"},"bugs":{"url":"https://github.com/aikitori/node-red-dashboard-2-authelia-auth/issues"},"author":{"name":"Fabian"},"license":"AGPL-3.0-or-later","homepage":"https://github.com/aikitori/node-red-dashboard-2-authelia-auth#readme","keywords":["node-red","node-red-dashboard","authelia","auth","authentication"],"repository":{"type":"git","url":"git+https://github.com/aikitori/node-red-dashboard-2-authelia-auth.git"},"description":"Dashboard Auth with Authelia","maintainers":[{"name":"kitori","email":"kitori@mailbox.org"}],"readme":"# Node-RED Dashboard with Authelia Authentication\n\nUse [Authelia](https://www.authelia.com/) as an authentication provider for the [Node-RED Dashboard 2](https://github.com/FlowFuse/node-red-dashboard).\n\nHeavily copied from: [node-red-dashboard-2-cloudflare-auth](https://github.com/fullmetal-fred/node-red-dashboard-2-cloudflare-auth)\nThank you :)\n\nYou need an Authelia-protected Node-RED instance.\n\n## Requirements\nA working Authelia instance with the default snippets.\n\n## Nginx Snippets\n\nRefer to the [Authelia Nginx Integration Guide](https://www.authelia.com/integration/proxies/nginx/)\n\n## Setting Up Authelia\n\nPlease read the documentation from Authelia:\nhttps://www.authelia.com/integration/prologue/get-started/\n\n### Minimal Docker Compose Configuration\n\nNote: This setup is not secure and should be used for testing purposes only.\n\n```\n\nservices:\n  authelia:\n    image: authelia/authelia\n    container_name: authelia\n    volumes:\n      - ./authelia:/config\n    ports:\n      - 9091:9091\n    restart: unless-stopped\n    environment:\n      - PUID=1000\n      - PGID=1000\n      - TZ=Europe/Berlin\n\n```\n\n`configuration.yml`\n\nCreate a configuration.yml file for Authelia with the following content:\n\n```\nserver:\n  address: 'tcp://:9091/'\nlogs_level: 'debug'\njwt_secret: insecure_secret\nauthentication_backend:\n  file:\n    path: /config/users.yml\ntotp:\n  issuer: example.com\nsession:\n  cookies:\n    - domain: 'example.com'\n      authelia_url: 'https://auth.example.com'\n      default_redirection_url: 'https://www.red.example.com'\nstorage:\n  encryption_key: 'you_must_generate_a_random_string_of_more_than_twenty_chars_and_configure_this'\n  local:\n    path: /config/db.sqlite\naccess_control:\n  default_policy: bypass\n  rules:\n    - domain: \"red.example.com\"\n      policy: one_factor\nnotifier:\n  filesystem:\n    filename: /config/emails.txt\n\n```\n\n## Setting Up Nginx\n\n### `auth.conf`\n\nCreate an auth.conf file for the authentication server:\n\n```\nserver {\nlisten 443      ssl;\nlisten [::]:443 ssl;\nserver_name auth.*;\n\nssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem;\nssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key;\n\n\n set $upstream http://127.0.0.1:9091;\n\n    location / {\n        include /etc/nginx/snippets/proxy.conf;\n        proxy_pass $upstream;\n    }\n\n    location = /api/verify {\n        proxy_pass $upstream;\n    }\n\n    location /api/authz/ {\n        proxy_pass $upstream;\n    }\n\n\n}\n```\n\n### `red.conf`\n\nCreate a red.conf file for the Node-RED server:\n\n```\nserver {\n    listen 443 ssl http2;\n    server_name red.example.com;\n\n    ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem;\n    ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key;\n\n    include /etc/nginx/snippets/authelia-location.conf;\n\n    location / {\n        include /etc/nginx/snippets/proxy.conf;\n        include /etc/nginx/snippets/authelia-authrequest.conf;\n        proxy_pass http://127.0.0.1:1880;\n    }\n}\n\n```\n\nThis setup enables Authelia to act as an authentication provider for the Node-RED Dashboard, securing access through Nginx. Ensure you replace placeholders such as example.com with your actual domain and adjust paths and settings according to your environment.","readmeFilename":"Readme.md"}