Summary: | sys-apps/hal-0.5.9-r1: org.freedesktop.DBus.Error.AccessDenied for non-local users | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Jonas Jonsson <jonas> |
Component: | [OLD] Core system | Assignee: | Project Gentopia <gentopia> |
Status: | RESOLVED INVALID | ||
Severity: | normal | ||
Priority: | High | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | emerge --info |
Description
Jonas Jonsson
2007-09-19 13:35:50 UTC
Created attachment 131295 [details]
emerge --info
I personally use LDAP at the office and my user does not exist in /etc/passwd but does exist in /etc/group and it works just fine. Run HAL from the console with verbose and daemonizing off and plug something in and post the log. Reading further into your issue it's directly related to your usage of pam_group, putting the user directly in /etc/group should work. This basically has nothing to do with HAL and everything to do with D-Bus. Basically D-Bus has <policy group="plugdev">, so what happens is D-Bus calls getgrnam() and gets a list of the group members to see if the calling user is in that group. That function is handled by nsswitch. If you have your nsswitch setup correctly, it should first check /etc/group and then LDAP. Where it will find that the user is not in the plugdev group added by the HAL ebuild to /etc/group and then when querying LDAP it will not find a plugdev group so it will simply reject the message. If you read the man page for pam_group, when you use pam to look something up and to see if the user in in that group, pam_group will fake that the user is in /etc/group when reporting back. However, PAM is not involved here. NSS is involved. Essentially to do this correctly, you should add a plugdev group to LDAP and add all your users in there and the problem is solved. I understand what you're trying to enforce, every user can only be in the plugdev group on their machine. However, that's just not going to be possible. This is why the plugdev group is going away in favor of ConsoleKit in future HAL releases. For some reason it started to work if I removed the pam_group.so and added the user to plugdev group in /etc/group. This hasn't worked before... *Sigh* Well thanks for the information. |