Skip to content

Conversation

@codingjoe
Copy link
Owner

@codingjoe codingjoe commented Feb 25, 2022

User privacy is important, not only to meet local regulations, but also to
protect your users and allow them to exercise their rights. However,
it's not always practical to delete users, especially if they have dependent
objects, that are relevant for statistical analysis.

Anonymization is a process of removing the user's personal data whilst keeping
related data intact. This is done by using the anonymize method.

@codingjoe codingjoe self-assigned this Feb 25, 2022
@codingjoe codingjoe requested a review from amureki February 25, 2022 15:41
@codingjoe codingjoe force-pushed the email-hash branch 2 times, most recently from d704a36 to 2c6cf29 Compare February 25, 2022 15:43
@codecov
Copy link

codecov bot commented Feb 25, 2022

Codecov Report

Merging #48 (3c2ffe0) into master (afa829f) will decrease coverage by 2.70%.
The diff coverage is 100.00%.

❗ Current head 3c2ffe0 differs from pull request most recent head fa125e9. Consider uploading reports for the commit fa125e9 to get more accurate results

@@            Coverage Diff             @@
##           master      #48      +/-   ##
==========================================
- Coverage   99.68%   96.97%   -2.71%     
==========================================
  Files          18       23       +5     
  Lines         316      364      +48     
==========================================
+ Hits          315      353      +38     
- Misses          1       11      +10     
Impacted Files Coverage Δ
mailauth/contrib/user/admin.py 100.00% <100.00%> (ø)
...0005_emailuser_email_hash_alter_emailuser_email.py 100.00% <100.00%> (ø)
mailauth/contrib/user/models.py 98.64% <100.00%> (+0.23%) ⬆️
mailauth/contrib/user/signals.py 100.00% <100.00%> (ø)
...th/contrib/user/migrations/0003_ci_unique_index.py 78.57% <0.00%> (-21.43%) ⬇️
mailauth/signing.py 91.42% <0.00%> (-8.58%) ⬇️
mailauth/forms.py 98.38% <0.00%> (-1.62%) ⬇️
mailauth/contrib/user/__init__.py 66.66% <0.00%> (ø)
mailauth/contrib/wagtail/__init__.py 66.66% <0.00%> (ø)
mailauth/contrib/admin/__init__.py 66.66% <0.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update afa829f...fa125e9. Read the comment docs.

@codingjoe codingjoe force-pushed the email-hash branch 2 times, most recently from 1c3a649 to 6dd1f48 Compare February 27, 2022 12:43
Copy link

@herrbenesch herrbenesch left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@codingjoe nice feature.
I think the real blockers hereare that you are using digest as well as hexdigest for a field you want to filter on and that you are not populating the new hash field. Which, I guess, is something you want.
I surely can't know all the implications this change will have on actual usage. Perhaps we should once install it @ voiio platform and test.

@codingjoe codingjoe force-pushed the email-hash branch 2 times, most recently from d3e3f2e to c0b8808 Compare April 8, 2022 07:08
@codingjoe codingjoe changed the title Add email hash field to simplify GDPR deletions Change email field to be nullable to simplify GDPR deletions Apr 12, 2022
@codingjoe codingjoe changed the title Change email field to be nullable to simplify GDPR deletions Make email field nullable to simplify GDPR deletions Apr 12, 2022
@codingjoe
Copy link
Owner Author

@Fidelitas I decided to ditch the whole hash thing. Hash collisions are an unlikely problem, but there really is no need to retain a hash. So just anonymization now :)

@codingjoe codingjoe changed the title Make email field nullable to simplify GDPR deletions Add anonymization feature for private user data Apr 12, 2022
@codingjoe codingjoe force-pushed the email-hash branch 2 times, most recently from 4eeb9c4 to 16f38aa Compare April 12, 2022 17:56
@lgtm-com
Copy link

lgtm-com bot commented Apr 12, 2022

This pull request introduces 1 alert when merging 16f38aa into 8d3634e - view on LGTM.com

new alerts:

  • 1 for Conflicting attributes in base classes

Repository owner deleted a comment from lgtm-com bot Apr 13, 2022
Repository owner deleted a comment from lgtm-com bot Apr 13, 2022
Repository owner deleted a comment from lgtm-com bot Apr 13, 2022
Repository owner deleted a comment from lgtm-com bot Apr 13, 2022
@codingjoe codingjoe force-pushed the email-hash branch 3 times, most recently from 5a2d691 to 03cfcad Compare April 13, 2022 20:48
@lgtm-com
Copy link

lgtm-com bot commented Apr 13, 2022

This pull request introduces 1 alert when merging 03cfcad into 8d3634e - view on LGTM.com

new alerts:

  • 1 for Conflicting attributes in base classes

Copy link

@herrbenesch herrbenesch left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm really impressed of the clean code (also the tests) that has been made here.
Very well done!

@lgtm-com
Copy link

lgtm-com bot commented Apr 14, 2022

This pull request introduces 1 alert when merging 3c2ffe0 into 8d3634e - view on LGTM.com

new alerts:

  • 1 for Conflicting attributes in base classes

@codingjoe codingjoe force-pushed the email-hash branch 3 times, most recently from 9994856 to 905eca7 Compare April 14, 2022 14:59
@codingjoe codingjoe force-pushed the email-hash branch 2 times, most recently from e8ede25 to 8868e3d Compare April 14, 2022 15:00
@lgtm-com
Copy link

lgtm-com bot commented Apr 14, 2022

This pull request introduces 1 alert when merging 8868e3d into afa829f - view on LGTM.com

new alerts:

  • 1 for Conflicting attributes in base classes

@lgtm-com
Copy link

lgtm-com bot commented Apr 14, 2022

This pull request introduces 1 alert when merging fa125e9 into afa829f - view on LGTM.com

new alerts:

  • 1 for Conflicting attributes in base classes

@codingjoe codingjoe merged commit 51038c2 into master Apr 14, 2022
@codingjoe codingjoe deleted the email-hash branch April 14, 2022 15:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants