Skip to content
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

Transfer ownership must work with master key #27427

Closed
2 tasks
PVince81 opened this issue Mar 20, 2017 · 7 comments
Closed
2 tasks

Transfer ownership must work with master key #27427

PVince81 opened this issue Mar 20, 2017 · 7 comments
Assignees
Labels
p2-high Escalation, on top of current planning, release blocker sev2-high status/STALE Type:Bug
Milestone

Comments

@PVince81
Copy link
Contributor

Transfer ownership should be possible because it doesn't require any user's specific password.

Currently it doesn't:

Steps:

  1. cd tests/integration
  2. Edit transfer-ownership.feature and remove "no_encryption" tags
  3. sudo -u wwwrun OC_TEST_ENCRYPTION_MASTER_KEY_ENABLED=1 ./run.sh features/transfer-ownership.feature

Expected:

All tests passing.

Actual:

Transfer ownership refuses to work because it detects encryption.

  • adjust isReadyForUser to return true if master key is used
  • somehow detect that encrypted files are ok when master key is enabled instead of asking for decryption. This is a bit tricky because it requires calling non-specific encryption manager APIs.

Maybe add a method to the encryption modules to let them tell whether moving files between users can be done without their passwords ?

@pmaier1 will become more important when we start fading out the default encryption

@PVince81 PVince81 added this to the backlog milestone Mar 20, 2017
@hodyroff hodyroff modified the milestones: 10.0.2, backlog May 8, 2017
@PVince81 PVince81 modified the milestones: 10.0.3, 10.0.2 May 26, 2017
@PVince81 PVince81 added the p2-high Escalation, on top of current planning, release blocker label May 26, 2017
@PVince81 PVince81 assigned PVince81 and sharidas and unassigned PVince81 May 31, 2017
@PVince81
Copy link
Contributor Author

@sharidas please take care of this, thanks

@sharidas
Copy link
Contributor

Sure

@butonic
Copy link
Member

butonic commented Jun 6, 2017

@pmaier1 @PVince81 we fade out the individual user key based encryption?

@PVince81
Copy link
Contributor Author

PVince81 commented Aug 7, 2017

While the merged PRs seem to work, there is a risk that it will not always work correctly in case the storage wrappers are setup differently. The problem is here: https://github.com/owncloud/core/pull/28107/files#diff-938b56891f3079e628cfda1c331911b7R366

This adds an argument to fopen which at first look seemed fine but in hindsight I remembered that if the encryption wrapper is itself wrapped by another fopen wrapper, the latter will likely not forward the value to the encryption wrapper, so it would break.

So far we are lucky that it works fine for transfer ownership but could break with third party apps.

I'm moving this ticket to "planned" now to look into other ways to pass around that value. This is quite tricky with the current architecture without resorting to globals...

@PVince81 PVince81 modified the milestones: planned, development Aug 7, 2017
@PVince81
Copy link
Contributor Author

@sharidas please link to the PRs where you cleant up the tech debt mentioned above, then close.

@sharidas
Copy link
Contributor

The PR which addresses issue referred #27427 (comment) is here #28774 . This is another PR which got addressed #28820 and merged.

@lock
Copy link

lock bot commented Aug 1, 2019

This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

@lock lock bot locked as resolved and limited conversation to collaborators Aug 1, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
p2-high Escalation, on top of current planning, release blocker sev2-high status/STALE Type:Bug
Projects
None yet
Development

No branches or pull requests

5 participants