All Projects → ziptofaf → Gdpr Rails

ziptofaf / Gdpr Rails

Licence: mit
An example project on building a GDPR compliant application

Programming Languages

ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to Gdpr Rails

Bhf
Rails-Engine-Gem that offers an admin interface for trusted user
Stars: ✭ 81 (-25.69%)
Mutual labels:  rails, ruby-on-rails
Rails React Boilerplate
Ruby on Rails, React, Webpack 4 boilerplate app.
Stars: ✭ 86 (-21.1%)
Mutual labels:  rails, ruby-on-rails
Rails Security Checklist
🔑 Community-driven Rails Security Checklist (see our GitHub Issues for the newest checks that aren't yet in the README)
Stars: ✭ 1,265 (+1060.55%)
Mutual labels:  rails, ruby-on-rails
Ifme
Free, open source mental health communication web app to share experiences with loved ones
Stars: ✭ 1,147 (+952.29%)
Mutual labels:  rails, ruby-on-rails
Entangled
Rails in real time
Stars: ✭ 108 (-0.92%)
Mutual labels:  redis, rails
Execution time
How fast is your code? See it directly in Rails console.
Stars: ✭ 67 (-38.53%)
Mutual labels:  rails, ruby-on-rails
Stimulus reflex expo
StimulusReflex demos
Stars: ✭ 85 (-22.02%)
Mutual labels:  rails, ruby-on-rails
Graphql Rails Generators
Graphql Rails Scaffold™. Automatically generate GraphQL types from your rails models.
Stars: ✭ 47 (-56.88%)
Mutual labels:  rails, ruby-on-rails
Recommendable
👍👎 A recommendation engine using Likes and Dislikes for your Ruby app
Stars: ✭ 1,340 (+1129.36%)
Mutual labels:  redis, rails
Reactchat
A chat app built with React.js and ActionCable in Ruby on Rails 5.1
Stars: ✭ 90 (-17.43%)
Mutual labels:  rails, ruby-on-rails
Coyote
4programmers.net
Stars: ✭ 61 (-44.04%)
Mutual labels:  redis, website
Lol dba
lol_dba is a small package of rake tasks that scan your application models and displays a list of columns that probably should be indexed. Also, it can generate .sql migration scripts.
Stars: ✭ 1,363 (+1150.46%)
Mutual labels:  rails, ruby-on-rails
Binda
Headless CMS based on Ruby on Rails
Stars: ✭ 60 (-44.95%)
Mutual labels:  rails, ruby-on-rails
Karafka
Framework for Apache Kafka based Ruby and Rails applications development.
Stars: ✭ 1,223 (+1022.02%)
Mutual labels:  rails, ruby-on-rails
Jsonapi parameters
Rails-way to consume JSON:API input
Stars: ✭ 50 (-54.13%)
Mutual labels:  rails, ruby-on-rails
Graphjin
GraphJin - Build APIs in 5 minutes with GraphQL. An instant GraphQL to SQL compiler.
Stars: ✭ 1,264 (+1059.63%)
Mutual labels:  rails, ruby-on-rails
Niklick
Rails Versioned API solution template for hipsters! (Ruby, Ruby on Rails, REST API, GraphQL, Docker, RSpec, Devise, Postgress DB)
Stars: ✭ 39 (-64.22%)
Mutual labels:  rails, ruby-on-rails
Drag and drop active storage
A demo drag and drop image upldate Ruby on Rails app using Stimulus.js, DropZone.js, and ActiveStorage
Stars: ✭ 46 (-57.8%)
Mutual labels:  rails, ruby-on-rails
Instuigram
🎓 Learning Ruby on Rails through building the Instagram Application.
Stars: ✭ 88 (-19.27%)
Mutual labels:  rails, ruby-on-rails
Sr mini
A single file Rails app that will have you running a StimulusReflex and CableReady demo in just 2 steps.
Stars: ✭ 98 (-10.09%)
Mutual labels:  rails, ruby-on-rails

BREAKING CHANGES

(2019-01-23) - if you used SQLite for a database then you will want to use updater:fix_represent_boolean_as_integer rake to fix a deprecation. secrets.yml is no longer stored in repo as well so make sure to backup it!

(2018-07-27) - there was an error in the system of storing encryption keys - instead of 28 bytes inside redis and 4 inside secrets.yml it was all stored inside redis. You can use rake updater:fix_redis_keys to ensure your user's data is still accessible after this update (it will remove excessive information from your redis database for existing users)

README

So this is an example of an application that adheres to GDPR regulations (aka EU wide fundamental changes to how personally identifiable information is stored). A lot of people seem to consider it really hard whereas in practice it's really not that bad and hopefully this small project helps you solve some problems.

Points covered:

  • Per row encryption for personally identifiable information (also helps with right to be forgotten, it's just a matter of removing your encryption_key for a given user now)
  • Retention policy
  • Separate types of user consents

Points partially covered:

  • Your ToS/consents types changing (all model requirements are in here, it's just a matter of adding a redirect after user logs in with a form to fill)
  • Log cleansing - slightly modified config/initializers/filter_parameter_logging.rb

Points not covered:

  • auditing - no admin panel built in to show this kind of functionality but you can get really far by adding audited gem anyway
  • testing - will probably add some if I see anyone interested in using this app for something

Tested on:

  • Ruby 2.5.0
  • Redis 3.2.1 (everything is namespaced in encrypt namespace so it probably won't hinder your environment)
  • Standard SQLite adapter

Usage:

There is a seeds.rb file so you can do rails db:seed to have two standard types of user consents, this is enough to complete registration.

You will also need to prepare a secrets.yml file in config (you can start with secrets.yml.example to see what needs to be set)

If you need a more detailed description then visit https://blog.vraith.com for details

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].