qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
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 :|

      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).