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

Allow SASL UID to be provided via the TransportBuilder #178

Merged
merged 1 commit into from
Jul 22, 2022
Merged

Allow SASL UID to be provided via the TransportBuilder #178

merged 1 commit into from
Jul 22, 2022

Conversation

brett-smith
Copy link
Contributor

.. instead of being detected.

There are a couple of reasons for this PR.

  1. I have an SSH transport. If I am using SASL, and if I am connecting from a machine where the local user UID differs from the authenticated user on the remote machine, the DBus connection will not be allowed. We must pretend that our UID is that of the remote user. I do not see this as security issue, the user is already authenticated by SSH, and the broker is validating that the connection is coming from the remote user.

  2. The use of UnixSystem breaks when attempting to compile to native code with GraalVM (actually, it fails to link). I believe this is a bug in Graal, but nevertheless UnixSystem is not part of the official API and is platform dependent. This is the sole reason for depending on the jdk.security.auth module.

Usage :-

builder.transportConfig().withSaslUid(1000);

…eing detected.

There are a couple of reasons for this PR.

1. I have an SSH transport. If I am using SASL, and if I am connecting from a machine where the local user UID differs from the authenticated user on the remote machine, the DBus connection will not be allowed. We must pretend that our UID is that of the remote user. I do not see this as security issue, the user is already authenticated by SSH, and the broker is validating that the connection is coming from the remote user.

2. The use of `UnixSystem` breaks when attempting to compile to native code with GraalVM (actually, it fails to link). I believe this is a bug in Graal, but neverthless `UnixSystem` is not part of the official API and is platform dependent. This is the sole reason for depending on the `jdk.security.auth` module.

Usage :-

`builder.transportConfig().withSaslUid(1000);`
@hypfvieh hypfvieh merged commit e12cffd into hypfvieh:master Jul 22, 2022
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.

2 participants