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

Signed files become public through their UID #686

Closed
gvansanden opened this issue Feb 25, 2022 · 6 comments
Closed

Signed files become public through their UID #686

gvansanden opened this issue Feb 25, 2022 · 6 comments

Comments

@gvansanden
Copy link

gvansanden commented Feb 25, 2022

I'm testing with libresign. But I've found that signed document is visible without logging in through it's UUID under
https:///index.php/apps/libresign/pdf/
That is the case even if the person signing it was an internal user. Is that not a security issue?

Libresign 2.4.5 on Ubuntu 20.04, Nextcloud 23.

@vitormattos
Copy link
Member

All signed documents have public links to make possible validate the document using the UUID of files.

A good scenario to explain this is when put the qrcode on footer of page with the validation URL. When the document is printed, will be possible read the qrcode to validate the printed document.

Maybe a good new feature is to make the admins enable or disable the public access to validate the document.

@gvansanden
Copy link
Author

@vitormattos I think that making them public by default is a huge issue. Most things that need a signature are to some degree confidential (contracts, purchase orders, ...)
I didn't expect that because in the scope of a signature request, the signer has to create an account.

@tasagore
Copy link

tasagore commented May 2, 2022

@vitormattos I think that making them public by default is a huge issue. Most things that need a signature are to some degree confidential (contracts, purchase orders, ...)
I didn't expect that because in the scope of a signature request, the signer has to create an account.

Not a huge issue since most of public documents should be able to be validated online with just the CSV.

Think in a printed contract that should be validated for a third party, it does not have sense create accounts for that.

May be 2FA should be fine in this point, for example if the document is signed by xxx@company.com when someone asks for a validation the app can send a PIN to xxx@company.com to accept the validation. If xxx@company.com is a disabled user then the request could be redirected to admins, etc. But with documents with more than one signature would be problematic.

@gvansanden
Copy link
Author

@tasagore It depends on the use case. If you are using it to sign contracts between two entities, then the content of those contract will be confidential and having the docs readable to the entire world is huge. I think having them public serves less use cases then having them private...

@vitormattos
Copy link
Member

@gvansanden this could be an app config to define if only will be possible request signature to internal or federated users or if will be possible request signature to a public users.

The point of @tasagore also could be an app config to define if you want to create account or not. This will generate impact in begin of sign flow because will be necessary request all necessary data to generate signature and don't create the user account.

We are currently in need of funding to keep development going and implement any new features or changes in the project.
For now we have a Patreon https://patreon.com/libresign to receive funding from minor supporters but, if you want to start a long time support and got a priority to solve issues and implement new features, you can send an email to contact [ at ] librecode [ dot] coop

@tasagore
Copy link

tasagore commented May 3, 2022

@tasagore It depends on the use case. If you are using it to sign contracts between two entities, then the content of those contract will be confidential and having the docs readable to the entire world is huge. I think having them public serves less use cases then having them private...

I understand, that scenery is for full-private use, in that case could be two easy mods (just an idea):

  1. Assign a security setting so the system would be private (only users can access to validate/download PDFs with UUID) or public (actual behavior)

  2. Setup a password for the document (same as when you share a document with a link from NC). This could be setting when the signature is requested.

The best...both, I guess it would be a better integration with how NC works. I'm involved in too many projects now but if I get some free time I can try to help with the develop of something like that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Development

No branches or pull requests

3 participants