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

Document how to configure access to host PKCS#11 devices #5756

Open
jmpolom opened this issue Mar 28, 2024 · 6 comments
Open

Document how to configure access to host PKCS#11 devices #5756

jmpolom opened this issue Mar 28, 2024 · 6 comments

Comments

@jmpolom
Copy link

jmpolom commented Mar 28, 2024

It is not trivial to enable apps like web browsers to access host PKCS#11 devices nor do the steps appear documented anywhere. A process using a p11-kit-server user service and manual filesystem override should be officially documented. Several users responded indicating they were unaware how to configure this before seeing a buried comment on a PR. See: #5423 (comment)

@mcatanzaro
Copy link
Collaborator

Hi, currently to use host PKCS #11 devices you need to use sandbox holes. That's not good and not something that really belongs in the documentaiton. It's better for users to treat PKCS #11 as a future feature instead. The correct solution is to create a portal, which would then be documented by xdg-desktop-portal and wouldn't require manual user configuration.

@jmpolom
Copy link
Author

jmpolom commented Apr 30, 2024

Hi, currently to use host PKCS #11 devices you need to use sandbox holes. That's not good and not something that really belongs in the documentaiton. It's better for users to treat PKCS #11 as a future feature instead. The correct solution is to create a portal, which would then be documented by xdg-desktop-portal and wouldn't require manual user configuration.

Unfortunately PKCS#11 functionality is needed today in many applications but the portal you're alluding to does not exist today. It is unclear when or if it will ever exist. Many of the surrounding issues appear have been dormant for a year.

I agree long term some kind of fancy complicated portal might be a slick feature but again, users need working PKCS#11 devices inside flatpak apps today. There will always be a trade off between security and expediency but there's no harm in Flatpak providing users information to make their own decision with. Again the user stays completely in control over what apps can access the host PKCS#11 devices using the workaround. By configuring the host side p11-kit-server they could achieve even more control. I see no major security issues here whatsoever.

What is a major problem though is non-functionality of a needed feature. This is really bad. This is when users make worse workarounds because they need something to work that should work and they need it working yesterday. Here the worse workaround is to install the application on the host OS itself. This will have no sandboxing at all from the host. Certainly worse security-wise and also obnoxious to configure.

I created a gist with suggested steps that should be added to the documentation to help users get this working.

@mcatanzaro
Copy link
Collaborator

Really strongly recommend against documenting step 3 as that's not acceptable to present to users.

The correct solution here requires work unfortunately. So far nobody has cared enough to make it happen....

@jmpolom
Copy link
Author

jmpolom commented Apr 30, 2024

Really strongly recommend against documenting step 3 as that's not acceptable to present to users.

Why is that supported functionality if you deem it inappropriate? I find it completely acceptable and necessary functionality!

@swick
Copy link
Contributor

swick commented Apr 30, 2024

It is unclear when or if it will ever exist

It will exist when someone starts to work on it. Constantly complaining on an issue achieves nothing.

@jmpolom
Copy link
Author

jmpolom commented May 22, 2024

Can someone else from Red Hat review this issue? These responses are unreasonable. This is a legitimate deficiency in flatpak and the solution being proposed is non-existent with no ETA. You're also refusing to document what is the present day workaround leaving users with only an option to "use something else" (pkcs#11 works fine on non-flatpak apps, and of course mac and windows).

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

No branches or pull requests

3 participants