[Bug 1823200] Fix merged to cinder (stable/pike)

OpenStack Infra 1823200 at bugs.launchpad.net
Fri Jul 24 21:39:56 UTC 2020


Reviewed:  https://review.opendev.org/733662
Committed: https://git.openstack.org/cgit/openstack/cinder/commit/?id=ba785eef5f515b869c0d68016e84bb74f76ab45e
Submitter: Zuul
Branch:    stable/pike

commit ba785eef5f515b869c0d68016e84bb74f76ab45e
Author: Ivan Pchelintsev <Ivan.Pchelintsev at dell.com>
Date:   Thu Jun 4 19:57:56 2020 +0300

    Remove VxFlex OS credentials from connection_properties
    
    VxFlex OS password is not stored in block_device_mapping table.
    Instead of this passwords are stored in separate file and are
    retrieved during each attach/detach operation.
    
    The stable/pike branch is in Extended Maintenance mode and is no
    longer released from.  If you decide to apply this patch to your
    deployment, you must make a corresponding change to the os-brick
    library.  You can find the os-brick patch for stable/pike here:
        https://review.opendev.org/#/c/733615
    
    Additionally, you must deploy a new configuration file on compute
    nodes, cinder nodes, and anywhere you would perform a volume
    attachment in your deployment.  See the documentation change on
    this patch for details about the new config file.
    
    See OSSN-0086 for more information about this change:
        https://wiki.openstack.org/wiki/OSSN/OSSN-0086
    
    Change-Id: I975922b2ac951988e51743cd9f2f6f76be520840
    Closes-Bug: #1823200

-- 
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to cinder in Ubuntu.
https://bugs.launchpad.net/bugs/1823200

Title:
  Improper handling of ScaleIO backend credentials

Status in Cinder:
  Fix Released
Status in Cinder queens series:
  Fix Committed
Status in Cinder rocky series:
  Fix Committed
Status in Cinder stein series:
  Fix Committed
Status in Cinder train series:
  Fix Committed
Status in Cinder ussuri series:
  Fix Committed
Status in Cinder victoria series:
  Fix Released
Status in Ubuntu Cloud Archive:
  Fix Released
Status in Ubuntu Cloud Archive queens series:
  Fix Released
Status in Ubuntu Cloud Archive rocky series:
  Fix Released
Status in Ubuntu Cloud Archive stein series:
  Fix Released
Status in Ubuntu Cloud Archive train series:
  Fix Released
Status in Ubuntu Cloud Archive ussuri series:
  Fix Released
Status in Ubuntu Cloud Archive victoria series:
  Fix Released
Status in os-brick:
  Fix Released
Status in OpenStack Security Advisory:
  Won't Fix
Status in OpenStack Security Notes:
  In Progress
Status in OpenStack Security Guide Documentation:
  Fix Released
Status in cinder package in Ubuntu:
  Fix Released
Status in python-os-brick package in Ubuntu:
  Fix Released
Status in cinder source package in Bionic:
  Fix Released
Status in python-os-brick source package in Bionic:
  Fix Released
Status in cinder source package in Eoan:
  Won't Fix
Status in python-os-brick source package in Eoan:
  Won't Fix
Status in cinder source package in Focal:
  Fix Released
Status in python-os-brick source package in Focal:
  Fix Released
Status in cinder source package in Groovy:
  Fix Released
Status in python-os-brick source package in Groovy:
  Fix Released

Bug description:
  The ScaleIO driver uses the backend storage login and password for
  authentication for connections to the volume as well as the management
  API.

  https://git.openstack.org/cgit/openstack/cinder/tree/cinder/volume/drivers/dell_emc/scaleio/driver.py?h=13.0.4#n176

  https://git.openstack.org/cgit/openstack/cinder/tree/cinder/volume/drivers/dell_emc/scaleio/driver.py?h=13.0.4#n229

  This has a few serious implications:
  a) A user can create a volume, retrieve the username/password from that volume, and use it to connect to a different tenant's volume.  Most drivers create per-volume credentials.

  b) A user can create a volume, retrieve the username/password from
  that volume, and use it to connect to the ScaleIO management API and
  presumably do lots of things they shouldn't be allowed to.  Most
  drivers create credentials for volumes that are independent of the
  management credentials.

  c) If the password is changed on the backend ScaleIO volumes that are
  currently being used stop working, because Nova stores the old
  password in its block_device_mapping table.  (Not a security problem
  other than the fact that it prevents rotation of passwords, but
  definitely a bug.)

  Parts of these issues are separately being looked at in bug 1736773,
  (which generally advises that in some clouds, only Nova should be able
  to see connection info, not end users) but the situation there is
  worse for the ScaleIO driver because most drivers only put
  usernames/passwords in connection_info that are usable for a single
  volume, not for the storage backend itself.

To manage notifications about this bug go to:
https://bugs.launchpad.net/cinder/+bug/1823200/+subscriptions



More information about the Ubuntu-openstack-bugs mailing list