[libvirt] [PATCH] PolicyKit: Check auth before asking client to obtain it
Eric Blake
eblake at redhat.com
Thu Jan 5 20:12:37 UTC 2012
On 01/03/2012 03:35 PM, Jim Fehlig wrote:
> I previously mentioned [1] a PolicyKit issue where libvirt would
> proceed with authentication even though polkit-auth failed:
>
> testusr xen134:~> virsh list --all
> Attempting to obtain authorization for org.libvirt.unix.manage.
> polkit-grant-helper: given auth type (8 -> yes) is bogus
> Failed to obtain authorization for org.libvirt.unix.manage.
> Id Name State
> ----------------------------------
> 0 Domain-0 running
> - sles11sp1-pv shut off
>
> AFAICT, libvirt attempts to obtain a privilege it already has,
> causing polkit-auth to fail with above message. Instead of calling
> obtain and then checking auth, IMO the workflow should be for the
> server to check auth first, and if that fails ask the client to
> obtain it and check again. This workflow also allows for checking
> only successful exit of polkit-auth in virConnectAuthGainPolkit().
>
> [1] https://www.redhat.com/archives/libvir-list/2011-December/msg00837.html
> ---
> src/libvirt.c | 2 +-
> src/remote/remote_driver.c | 11 +++++++++++
> 2 files changed, 12 insertions(+), 1 deletions(-)
This looks reasonable to me, but I'd like a second opinion from someone
more familiar with the PolicyKit code before you push anything (that
would probably be DV or danpb). If they agree, then I think it can go
in 0.9.9.
--
Eric Blake eblake at redhat.com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 620 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20120105/c1ffada5/attachment-0001.sig>
More information about the libvir-list
mailing list