From: "Daniel P. Berrange" <berrange@redhat.com>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: qemu-devel@nongnu.org, qemu-block@nongnu.org,
Markus Armbruster <armbru@redhat.com>
Subject: Re: [Qemu-devel] [PATCH v3 0/3] Use QCryptoSecret for block device passwords
Date: Wed, 20 Jan 2016 09:39:52 +0000 [thread overview]
Message-ID: <20160120093952.GA13628@redhat.com> (raw)
In-Reply-To: <569E9F7B.1080309@redhat.com>
On Tue, Jan 19, 2016 at 09:41:31PM +0100, Paolo Bonzini wrote:
>
>
> On 19/01/2016 17:46, Daniel P. Berrange wrote:
> > On Tue, Jan 19, 2016 at 05:32:35PM +0100, Paolo Bonzini wrote:
> >>
> >>
> >> On 19/01/2016 14:51, Daniel P. Berrange wrote:
> >>> This series was previously posted:
> >>>
> >>> v1: https://lists.gnu.org/archive/html/qemu-devel/2015-10/msg04365.html
> >>> v2: https://lists.gnu.org/archive/html/qemu-devel/2015-12/msg03809.html
> >>>
> >>> The RBD, Curl and iSCSI block device drivers all need the ability
> >>> to accept a password to authenticate with the remote network storage
> >>> server. Currently RBD and iSCSI both just take the password in clear
> >>> text as part of the block parameters which is insecure (passwords are
> >>> visible in the process listing), while Curl doesn't support auth at
> >>> all.
> >>>
> >>> This series updates all three drivers so that they use the recently
> >>> merged QCryptoSecret API for getting passwords. Each driver gains
> >>> a 'passwordid' property that can be set to provide the ID of a
> >>> QCryptoSecret object instance, which in turn provides the actual
> >>> password data.
> >>>
> >>> This series is required in order to fix a long standing CVE security
> >>> flaw in libvirt, whereby passwords are exposed in the command line
> >>> arguments and so visible in process listing
> >>>
> >>> This series would benefit from the --object additions to qemu-img,
> >>> qemu-io and qemu-nbd, but this is not a pre-requisite for its merge
> >>> as it us still useful in the system emulator without that support:
> >>>
> >>> https://lists.gnu.org/archive/html/qemu-devel/2016-01/msg03381.html
> >>>
> >>> Changed in v3:
> >>>
> >>> - Rename 'passwordid' to 'password-id', 'proxypasswordid'
> >>> to 'proxy-password-id' and 'proxyusername' to 'proxy-username'
> >>> (Markus)
> >>>
> >>> Daniel P. Berrange (3):
> >>> rbd: add support for getting password from QCryptoSecret object
> >>> curl: add support for HTTP authentication parameters
> >>> iscsi: add support for getting CHAP password via QCryptoSecret API
> >>>
> >>> block/curl.c | 66 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> >>> block/iscsi.c | 24 +++++++++++++++++++++-
> >>> block/rbd.c | 47 ++++++++++++++++++++++++++++++++++++++++++
> >>> 3 files changed, 136 insertions(+), 1 deletion(-)
> >>>
> >>
> >> Apologizing in advance for bikeshedding: what about using proxy-secret
> >> and secret instead? Traditionally the name of object options has
> >> referred to the name of the class.
> >
> > I wanted to avoid using the word 'secret', because in the future when we
> > have ability to run LUKS encryption over any backend, we will have need
> > to pass multiple secrets for a single drive spec. For example, we'll need
> > one secret to provide the RBD password, and one secret to provide the LUKS
> > decryption passphrase. So I felt using 'password' is a better choice to
> > standardize on for the protocol authentication needs.
>
> If you have a qcow2->luks->rbd tree, the LUKS passphrase would be
> file.secret, while the rbd credentials would be file.file.username and
> file.file.secret.
Yep, I just feel that could be slightly confusing as to which is
which if they have the same name.
> password-secret and proxy-password-secret are fine too. I just don't
> like "id" too much.
That sounds ok to me.
Regards,
Daniel
--
|: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org -o- http://virt-manager.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
prev parent reply other threads:[~2016-01-20 9:40 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-01-19 13:51 [Qemu-devel] [PATCH v3 0/3] Use QCryptoSecret for block device passwords Daniel P. Berrange
2016-01-19 13:51 ` [Qemu-devel] [PATCH v3 1/3] rbd: add support for getting password from QCryptoSecret object Daniel P. Berrange
2016-01-19 13:51 ` [Qemu-devel] [PATCH v3 2/3] curl: add support for HTTP authentication parameters Daniel P. Berrange
2016-01-19 13:52 ` [Qemu-devel] [PATCH v3 3/3] iscsi: add support for getting CHAP password via QCryptoSecret API Daniel P. Berrange
2016-01-19 16:32 ` [Qemu-devel] [PATCH v3 0/3] Use QCryptoSecret for block device passwords Paolo Bonzini
2016-01-19 16:46 ` Daniel P. Berrange
2016-01-19 20:41 ` Paolo Bonzini
2016-01-20 9:39 ` Daniel P. Berrange [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160120093952.GA13628@redhat.com \
--to=berrange@redhat.com \
--cc=armbru@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).