-
-
Notifications
You must be signed in to change notification settings - Fork 4.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Proposal] Inform user about master key generation on encryption enabling #40468
base: master
Are you sure you want to change the base?
Conversation
Hi @func0der - Thanks for working on this and giving some thought to the user experience side! I also saw your directly related PR for the docs (nextcloud/documentation#11122). There are a handful of outstanding/overlapping server-side encryption Issues/PRs in the docs section right now, some of which directly touch this matter (https://github.com/nextcloud/documentation/labels/feature%3A%20encryption%20%28server-side%29) Here's what I suggest:
I'll also try to consolidate some of the duplicate Issues in the docs repo that cover this topic. |
Anything that clears this matter up is a welcome change :D |
@@ -18,6 +18,7 @@ | |||
<p>{{ t('settings', 'Please read carefully before activating server-side encryption:') }}</p> | |||
<ul> | |||
<li>{{ t('settings', 'Once encryption is enabled, all files uploaded to the server from that point forward will be encrypted at rest on the server. It will only be possible to disable encryption at a later date if the active encryption module supports that function, and all pre-conditions (e.g. setting a recover key) are met.') }}</li> | |||
<li>{{ t('settings', 'By default a master key for the whole instance will be generated. Please check if that level of access is compliant with your needs.') }}</li> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
<li>{{ t('settings', 'By default a master key for the whole instance will be generated. Please check if that level of access is compliant with your needs.') }}</li> | |
<li>{{ t('settings', 'By default a master key for the whole instance will be generated. Please check if that level of access is compliant with your needs. If needed refer to the documentation on how to enable per-user keys.') }}</li> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sounds good to add this
Hm... wouldnt this conflict with #50424? |
@szaimen yes but that information is still there and we should add that part |
…n enabling Signed-off-by: func0der <[email protected]>
@func0der took the liberty to rebase the PR |
Summary
The user/admin should be informed about the fact that the encryption is generating a master key for the whole instance.
This default behavior was introduced in Nextcloud 13 and was not properly communicated (as it seems). There was no trace to be found in the docs, nor was there anything in the interface warning the non-RTFM users about this.
This change to a less secure, but more user friendly setup, should be clearly communicated to the user since Nextcloud is used in more and more setups which require them to be compliant with very high privacy standards.
If the user is not pro-actively informed about this setup, they might violate those standards by accident.
TODO
Checklist
Code is properly formatted
Sign-off message is added to all commits
Tests (unit, integration, api and/or acceptance) are included
Screenshots before/after for front-end changes
![before](https://private-user-images.githubusercontent.com/529819/268532147-db667f51-bdb1-44ac-960e-64f667b28fe4.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzg5NDg2MzYsIm5iZiI6MTczODk0ODMzNiwicGF0aCI6Ii81Mjk4MTkvMjY4NTMyMTQ3LWRiNjY3ZjUxLWJkYjEtNDRhYy05NjBlLTY0ZjY2N2IyOGZlNC5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjUwMjA3JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI1MDIwN1QxNzEyMTZaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT00MTFlMmIxYjE1ZTZhMDViMmMyN2Y1ZWE3Y2E4YzBkMTI1NzI3NTQyOWNkYWYyNjE2NTM2MzVjMTUwMmVlZjllJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCJ9.zdlVhS2MkQb_pl2m46cjxFabpHAKcq1aMkkG4GR_ZnI)
![after](https://private-user-images.githubusercontent.com/529819/268532131-bbd02875-a932-4e73-9304-bae031044de9.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzg5NDg2MzYsIm5iZiI6MTczODk0ODMzNiwicGF0aCI6Ii81Mjk4MTkvMjY4NTMyMTMxLWJiZDAyODc1LWE5MzItNGU3My05MzA0LWJhZTAzMTA0NGRlOS5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjUwMjA3JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI1MDIwN1QxNzEyMTZaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT0yZjA5YWQ2NWZlMjM2ZDY5ZGM5M2I1ZGQ5Mjg0ZDk0MGQyODViYTk2ZjllZjc0NDBkZTA0YTZlZDBjMDliMmFiJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCJ9.KRXG1NH8n1S5Pc4ryqqQbauoFk_Ai2RysrPGEi819G0)
Documentation (manuals or wiki) has been updated or is not required -> Clarify the use of a master key during setup of encryption documentation#11122
Backports requested where applicable (ex: critical bugfixes)