)]}'
{"security-guide/ch_block_storage.xml":[{"author":{"_account_id":10670,"name":"Michael McCune","email":"elmiko@redhat.com","username":"mimccune"},"change_message_id":"b84380145af709e02e3055f909ebdcf434177361","unresolved":false,"context_lines":[{"line_number":39,"context_line":"        which is the LVM driver (Logical Volume Manager) which is the reference"},{"line_number":40,"context_line":"        driver.\u003c/para\u003e"},{"line_number":41,"context_line":"    \u003ccaution\u003e"},{"line_number":42,"context_line":"        \u003cpara\u003eWhen removing Volume or Snapshots there is an additional"},{"line_number":43,"context_line":"            operation called secure-delete. There are some issues using the"},{"line_number":44,"context_line":"            cinder LVM back-end with this.  This operation would wipe the LBA\u0027s"},{"line_number":45,"context_line":"            (Logical Block Addressing) of the allocated resource by using"}],"source_content_type":"application/xml","patch_set":1,"id":"ba3cc151_c61b3dc9","line":42,"updated":"2015-07-07 21:31:41.000000000","message":"should this be Volumes?","commit_id":"32a7927f98a0a8df19e6668400d43d7ceb48c1bf"},{"author":{"_account_id":10670,"name":"Michael McCune","email":"elmiko@redhat.com","username":"mimccune"},"change_message_id":"b84380145af709e02e3055f909ebdcf434177361","unresolved":false,"context_lines":[{"line_number":41,"context_line":"    \u003ccaution\u003e"},{"line_number":42,"context_line":"        \u003cpara\u003eWhen removing Volume or Snapshots there is an additional"},{"line_number":43,"context_line":"            operation called secure-delete. There are some issues using the"},{"line_number":44,"context_line":"            cinder LVM back-end with this.  This operation would wipe the LBA\u0027s"},{"line_number":45,"context_line":"            (Logical Block Addressing) of the allocated resource by using"},{"line_number":46,"context_line":"            \u003clink xlink:href\u003d\"https://en.wikipedia.org/wiki/Dd_(Unix)\"\u003edd\u003c/link\u003e"},{"line_number":47,"context_line":"            to write zeros over all of the allocated blocks of the resource."}],"source_content_type":"application/xml","patch_set":1,"id":"ba3cc151_e6dbe1eb","line":44,"updated":"2015-07-07 21:31:41.000000000","message":"this reads a little odd with one sentence ending on \"this\" and the next starting with \"This\"","commit_id":"32a7927f98a0a8df19e6668400d43d7ceb48c1bf"},{"author":{"_account_id":10670,"name":"Michael McCune","email":"elmiko@redhat.com","username":"mimccune"},"change_message_id":"b84380145af709e02e3055f909ebdcf434177361","unresolved":false,"context_lines":[{"line_number":68,"context_line":"    \u003ctip\u003e"},{"line_number":69,"context_line":"        \u003cpara\u003eIn addition, the cinder developers also introduced thin"},{"line_number":70,"context_line":"            provisioning options for LVM.  Using thin provisioning resolves"},{"line_number":71,"context_line":"            this issue internally as when a thin reate a thin provisioned LVM"},{"line_number":72,"context_line":"            volume is created, the LVM subsystem always returns zeros for"},{"line_number":73,"context_line":"            blocks you haven\u0027t written yet, so there\u0027s never an issue of data"},{"line_number":74,"context_line":"            leakage here.\u003c/para\u003e\u003c/tip\u003e"}],"source_content_type":"application/xml","patch_set":1,"id":"ba3cc151_c68eddcf","line":71,"updated":"2015-07-07 21:31:41.000000000","message":"looks like an extra \"a thin reate\" got left behind","commit_id":"32a7927f98a0a8df19e6668400d43d7ceb48c1bf"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"00d815d33f98b1a93d39ef473cef49c5ef54a21e","unresolved":false,"context_lines":[{"line_number":35,"context_line":"    \u003c/note\u003e"},{"line_number":36,"context_line":"  \u003csection xml:id\u003d\"block-storage-cinder-wipe-behavior\"\u003e"},{"line_number":37,"context_line":"    \u003ctitle\u003eBlock Storage wiping behaviour\u003c/title\u003e"},{"line_number":38,"context_line":"    \u003cpara\u003eOpenStack Block Storage has a variety of supported back-ends, one of"},{"line_number":39,"context_line":"        which is the LVM driver (Logical Volume Manager) which is the reference"},{"line_number":40,"context_line":"        driver.\u003c/para\u003e"},{"line_number":41,"context_line":"    \u003ccaution\u003e"}],"source_content_type":"application/xml","patch_set":2,"id":"9a41bdd9_4849eecf","line":38,"updated":"2015-07-11 08:55:44.000000000","message":"back end - see https://wiki.openstack.org/wiki/Documentation/Conventions#backend.2C_back_end.2C_and_back-end","commit_id":"cc9732bf56846af3e2ef0214e9a9578b36a8169c"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"00d815d33f98b1a93d39ef473cef49c5ef54a21e","unresolved":false,"context_lines":[{"line_number":36,"context_line":"  \u003csection xml:id\u003d\"block-storage-cinder-wipe-behavior\"\u003e"},{"line_number":37,"context_line":"    \u003ctitle\u003eBlock Storage wiping behaviour\u003c/title\u003e"},{"line_number":38,"context_line":"    \u003cpara\u003eOpenStack Block Storage has a variety of supported back-ends, one of"},{"line_number":39,"context_line":"        which is the LVM driver (Logical Volume Manager) which is the reference"},{"line_number":40,"context_line":"        driver.\u003c/para\u003e"},{"line_number":41,"context_line":"    \u003ccaution\u003e"},{"line_number":42,"context_line":"        \u003cpara\u003eWhen removing Volumes or Snapshots there is an additional"}],"source_content_type":"application/xml","patch_set":2,"id":"9a41bdd9_684632c1","line":39,"updated":"2015-07-11 08:55:44.000000000","message":"You could link to the glossary here - \u003cglossterm\u003eLogical Volume Manager (LVM)\u003c/glossterm\u003e","commit_id":"cc9732bf56846af3e2ef0214e9a9578b36a8169c"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"00d815d33f98b1a93d39ef473cef49c5ef54a21e","unresolved":false,"context_lines":[{"line_number":39,"context_line":"        which is the LVM driver (Logical Volume Manager) which is the reference"},{"line_number":40,"context_line":"        driver.\u003c/para\u003e"},{"line_number":41,"context_line":"    \u003ccaution\u003e"},{"line_number":42,"context_line":"        \u003cpara\u003eWhen removing Volumes or Snapshots there is an additional"},{"line_number":43,"context_line":"            operation called secure-delete. There are some issues using the"},{"line_number":44,"context_line":"            cinder LVM back-end such as operations that should wipe the LBA\u0027s"},{"line_number":45,"context_line":"            (Logical Block Addressing) of the allocated resource by using"}],"source_content_type":"application/xml","patch_set":2,"id":"9a41bdd9_2817caa4","line":42,"updated":"2015-07-11 08:55:44.000000000","message":"lowercase volumes and snapshots","commit_id":"cc9732bf56846af3e2ef0214e9a9578b36a8169c"},{"author":{"_account_id":8074,"name":"Jin Nan Zhang","username":"zhangjinnan","inactive":true},"change_message_id":"515a692b03c2bdeb6a884bb8194d5ec5be54f38b","unresolved":false,"context_lines":[{"line_number":39,"context_line":"        which is the LVM driver (Logical Volume Manager) which is the reference"},{"line_number":40,"context_line":"        driver.\u003c/para\u003e"},{"line_number":41,"context_line":"    \u003ccaution\u003e"},{"line_number":42,"context_line":"        \u003cpara\u003eWhen removing Volumes or Snapshots there is an additional"},{"line_number":43,"context_line":"            operation called secure-delete. There are some issues using the"},{"line_number":44,"context_line":"            cinder LVM back-end such as operations that should wipe the LBA\u0027s"},{"line_number":45,"context_line":"            (Logical Block Addressing) of the allocated resource by using"}],"source_content_type":"application/xml","patch_set":2,"id":"9a41bdd9_b1c66366","line":42,"in_reply_to":"9a41bdd9_2817caa4","updated":"2015-07-14 16:47:50.000000000","message":"%s/Volumes/volumes/g\n\n%s/Snaphosts/snapshots/g","commit_id":"cc9732bf56846af3e2ef0214e9a9578b36a8169c"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"00d815d33f98b1a93d39ef473cef49c5ef54a21e","unresolved":false,"context_lines":[{"line_number":41,"context_line":"    \u003ccaution\u003e"},{"line_number":42,"context_line":"        \u003cpara\u003eWhen removing Volumes or Snapshots there is an additional"},{"line_number":43,"context_line":"            operation called secure-delete. There are some issues using the"},{"line_number":44,"context_line":"            cinder LVM back-end such as operations that should wipe the LBA\u0027s"},{"line_number":45,"context_line":"            (Logical Block Addressing) of the allocated resource by using"},{"line_number":46,"context_line":"            \u003clink xlink:href\u003d\"https://en.wikipedia.org/wiki/Dd_(Unix)\"\u003edd\u003c/link\u003e"},{"line_number":47,"context_line":"            to write zeros over all of the allocated blocks of the resource."}],"source_content_type":"application/xml","patch_set":2,"id":"9a41bdd9_c80bbe7c","line":44,"updated":"2015-07-11 08:55:44.000000000","message":"cinder -\u003e Block Storage\nback end\n\nPlease fix everywhere. For cinder, see:\nhttps://wiki.openstack.org/wiki/Documentation/Conventions#Service_and_project_names","commit_id":"cc9732bf56846af3e2ef0214e9a9578b36a8169c"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"00d815d33f98b1a93d39ef473cef49c5ef54a21e","unresolved":false,"context_lines":[{"line_number":45,"context_line":"            (Logical Block Addressing) of the allocated resource by using"},{"line_number":46,"context_line":"            \u003clink xlink:href\u003d\"https://en.wikipedia.org/wiki/Dd_(Unix)\"\u003edd\u003c/link\u003e"},{"line_number":47,"context_line":"            to write zeros over all of the allocated blocks of the resource."},{"line_number":48,"context_line":"            The principle behind this implementation was to ensure that data"},{"line_number":49,"context_line":"            leakage is prevented.\u003c/para\u003e\u003c/caution\u003e"},{"line_number":50,"context_line":"    \u003cpara\u003eFor example Tenant A, creates a volume and puts sensitive data on it,"},{"line_number":51,"context_line":"        then deletes it, and Tenant B creates a volume that just so happens to"}],"source_content_type":"application/xml","patch_set":2,"id":"9a41bdd9_681dd2bc","line":48,"updated":"2015-07-11 08:55:44.000000000","message":"active voice - use \"is\" instead of \"was\". Or did you write was because it\u0027s deprecated? Then I think you need to write it differenctly","commit_id":"cc9732bf56846af3e2ef0214e9a9578b36a8169c"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"00d815d33f98b1a93d39ef473cef49c5ef54a21e","unresolved":false,"context_lines":[{"line_number":47,"context_line":"            to write zeros over all of the allocated blocks of the resource."},{"line_number":48,"context_line":"            The principle behind this implementation was to ensure that data"},{"line_number":49,"context_line":"            leakage is prevented.\u003c/para\u003e\u003c/caution\u003e"},{"line_number":50,"context_line":"    \u003cpara\u003eFor example Tenant A, creates a volume and puts sensitive data on it,"},{"line_number":51,"context_line":"        then deletes it, and Tenant B creates a volume that just so happens to"},{"line_number":52,"context_line":"        reallocate the same blocks that tenant A was using.  It\u0027s possible that"},{"line_number":53,"context_line":"        tenant B could read from the volume and assemble blocks of information."}],"source_content_type":"application/xml","patch_set":2,"id":"9a41bdd9_0879a6fc","line":50,"updated":"2015-07-11 08:55:44.000000000","message":"lower-case tenant everwhere.","commit_id":"cc9732bf56846af3e2ef0214e9a9578b36a8169c"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"304fac2b35d7456e66efeb9335fb05a867505f91","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        then deletes it, and Tenant B creates a volume that just so happens to"},{"line_number":52,"context_line":"        reallocate the same blocks that tenant A was using.  It\u0027s possible that"},{"line_number":53,"context_line":"        tenant B could read from the volume and assemble blocks of information."},{"line_number":54,"context_line":"        The dd of zeros was intended to eliminate the possibility of this"},{"line_number":55,"context_line":"        happening.\u003c/para\u003e"},{"line_number":56,"context_line":"    \u003cpara\u003eThe problem with this process is that some Linux kernels have a bug"},{"line_number":57,"context_line":"        in the LVM driver (as found in Ubuntu 12.04), which is exposed regulary"}],"source_content_type":"application/xml","patch_set":2,"id":"9a41bdd9_3043f1b3","line":54,"updated":"2015-07-15 16:04:38.000000000","message":"was intended -\u003e is intended   (still true)","commit_id":"cc9732bf56846af3e2ef0214e9a9578b36a8169c"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"304fac2b35d7456e66efeb9335fb05a867505f91","unresolved":false,"context_lines":[{"line_number":54,"context_line":"        The dd of zeros was intended to eliminate the possibility of this"},{"line_number":55,"context_line":"        happening.\u003c/para\u003e"},{"line_number":56,"context_line":"    \u003cpara\u003eThe problem with this process is that some Linux kernels have a bug"},{"line_number":57,"context_line":"        in the LVM driver (as found in Ubuntu 12.04), which is exposed regulary"},{"line_number":58,"context_line":"        by heavy I/O going to the Volumes (or especially Snapshots) resulting"},{"line_number":59,"context_line":"        in a kernel hang requiring a hard reset to recover the system.\u003c/para\u003e"},{"line_number":60,"context_line":"    \u003cpara\u003eThere were a number of suggestions to backport LVM versions but is"}],"source_content_type":"application/xml","patch_set":2,"id":"9a41bdd9_d01885d5","line":57,"updated":"2015-07-15 16:04:38.000000000","message":"regularly*","commit_id":"cc9732bf56846af3e2ef0214e9a9578b36a8169c"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"00d815d33f98b1a93d39ef473cef49c5ef54a21e","unresolved":false,"context_lines":[{"line_number":55,"context_line":"        happening.\u003c/para\u003e"},{"line_number":56,"context_line":"    \u003cpara\u003eThe problem with this process is that some Linux kernels have a bug"},{"line_number":57,"context_line":"        in the LVM driver (as found in Ubuntu 12.04), which is exposed regulary"},{"line_number":58,"context_line":"        by heavy I/O going to the Volumes (or especially Snapshots) resulting"},{"line_number":59,"context_line":"        in a kernel hang requiring a hard reset to recover the system.\u003c/para\u003e"},{"line_number":60,"context_line":"    \u003cpara\u003eThere were a number of suggestions to backport LVM versions but is"},{"line_number":61,"context_line":"        currently unsolved in the default Ubuntu 12.04 kernel, as outlined on"}],"source_content_type":"application/xml","patch_set":2,"id":"9a41bdd9_c882dec8","line":58,"updated":"2015-07-11 08:55:44.000000000","message":"lowercase: volumes, snapshots","commit_id":"cc9732bf56846af3e2ef0214e9a9578b36a8169c"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"00d815d33f98b1a93d39ef473cef49c5ef54a21e","unresolved":false,"context_lines":[{"line_number":57,"context_line":"        in the LVM driver (as found in Ubuntu 12.04), which is exposed regulary"},{"line_number":58,"context_line":"        by heavy I/O going to the Volumes (or especially Snapshots) resulting"},{"line_number":59,"context_line":"        in a kernel hang requiring a hard reset to recover the system.\u003c/para\u003e"},{"line_number":60,"context_line":"    \u003cpara\u003eThere were a number of suggestions to backport LVM versions but is"},{"line_number":61,"context_line":"        currently unsolved in the default Ubuntu 12.04 kernel, as outlined on"},{"line_number":62,"context_line":"        the \u003clink xlink:href\u003d\"https://launchpad.net/bugs/1023755\"\u003ebug\u003c/link\u003e."},{"line_number":63,"context_line":"        To work around this issue, an option to disable the secure delete"}],"source_content_type":"application/xml","patch_set":2,"id":"9a41bdd9_8854d654","line":60,"updated":"2015-07-11 08:55:44.000000000","message":"Now it gets really Ubuntu centric. What about other distributions.","commit_id":"cc9732bf56846af3e2ef0214e9a9578b36a8169c"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"304fac2b35d7456e66efeb9335fb05a867505f91","unresolved":false,"context_lines":[{"line_number":57,"context_line":"        in the LVM driver (as found in Ubuntu 12.04), which is exposed regulary"},{"line_number":58,"context_line":"        by heavy I/O going to the Volumes (or especially Snapshots) resulting"},{"line_number":59,"context_line":"        in a kernel hang requiring a hard reset to recover the system.\u003c/para\u003e"},{"line_number":60,"context_line":"    \u003cpara\u003eThere were a number of suggestions to backport LVM versions but is"},{"line_number":61,"context_line":"        currently unsolved in the default Ubuntu 12.04 kernel, as outlined on"},{"line_number":62,"context_line":"        the \u003clink xlink:href\u003d\"https://launchpad.net/bugs/1023755\"\u003ebug\u003c/link\u003e."},{"line_number":63,"context_line":"        To work around this issue, an option to disable the secure delete"}],"source_content_type":"application/xml","patch_set":2,"id":"9a41bdd9_30069152","line":60,"in_reply_to":"9a41bdd9_8854d654","updated":"2015-07-15 16:04:38.000000000","message":"This also strikes me as odd.  This has been well-supported in Fedora/CentOS/RHEL for quite a while.\n\nI\u0027m not really too familiar with what this guide targets, but it seems odd to have so much discussion around Ubuntu kernel bugs.","commit_id":"cc9732bf56846af3e2ef0214e9a9578b36a8169c"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"00d815d33f98b1a93d39ef473cef49c5ef54a21e","unresolved":false,"context_lines":[{"line_number":62,"context_line":"        the \u003clink xlink:href\u003d\"https://launchpad.net/bugs/1023755\"\u003ebug\u003c/link\u003e."},{"line_number":63,"context_line":"        To work around this issue, an option to disable the secure delete"},{"line_number":64,"context_line":"        process altogether was added to cinder.  It is thought that most"},{"line_number":65,"context_line":"        deployments using the LVM backend are private cloud and dev/test or"},{"line_number":66,"context_line":"        proof-of-concept environments and many of them were not concerned with"},{"line_number":67,"context_line":"        this possible data leakage issue.\u003c/para\u003e"},{"line_number":68,"context_line":"    \u003ctip\u003e"}],"source_content_type":"application/xml","patch_set":2,"id":"9a41bdd9_886db634","line":65,"updated":"2015-07-11 08:55:44.000000000","message":"private cloud which are development and test or proof-of-concept...","commit_id":"cc9732bf56846af3e2ef0214e9a9578b36a8169c"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"304fac2b35d7456e66efeb9335fb05a867505f91","unresolved":false,"context_lines":[{"line_number":64,"context_line":"        process altogether was added to cinder.  It is thought that most"},{"line_number":65,"context_line":"        deployments using the LVM backend are private cloud and dev/test or"},{"line_number":66,"context_line":"        proof-of-concept environments and many of them were not concerned with"},{"line_number":67,"context_line":"        this possible data leakage issue.\u003c/para\u003e"},{"line_number":68,"context_line":"    \u003ctip\u003e"},{"line_number":69,"context_line":"        \u003cpara\u003eIn addition, the cinder developers also introduced thin"},{"line_number":70,"context_line":"            provisioning options for LVM.  Using thin provisioning resolves"}],"source_content_type":"application/xml","patch_set":2,"id":"9a41bdd9_903d1ddf","line":67,"updated":"2015-07-15 16:04:38.000000000","message":"I don\u0027t think we should document that we don\u0027t think this is a real problem.  We can assume that at least some people are using this driver in situations where this matters.","commit_id":"cc9732bf56846af3e2ef0214e9a9578b36a8169c"},{"author":{"_account_id":6804,"name":"bruce-benjamin","email":"bruce.benjamin@jhuapl.edu","username":"bruce-benjamin"},"change_message_id":"2c6e0f5008b372fbf4a1966d7cf34a6b369b8998","unresolved":false,"context_lines":[{"line_number":79,"context_line":"        the Ubuntu project.\u003c/para\u003e"},{"line_number":80,"context_line":"    \u003cpara\u003eThe recommendation for those that are concerned about data leakage"},{"line_number":81,"context_line":"        between volumes is to not use Ubuntu 12.04, but also thin provisioning"},{"line_number":82,"context_line":"        is likely a better option as the I/O and time intension operation of"},{"line_number":83,"context_line":"        overwriting blocks (with zero, via dd) on delete is expensive.\u003c/para\u003e"},{"line_number":84,"context_line":"  \u003c/section\u003e"},{"line_number":85,"context_line":"\u003c/chapter\u003e"}],"source_content_type":"application/xml","patch_set":2,"id":"9a41bdd9_c1b6e789","line":82,"updated":"2015-07-13 22:18:58.000000000","message":"s/intension/intensive/","commit_id":"cc9732bf56846af3e2ef0214e9a9578b36a8169c"},{"author":{"_account_id":6804,"name":"bruce-benjamin","email":"bruce.benjamin@jhuapl.edu","username":"bruce-benjamin"},"change_message_id":"2c6e0f5008b372fbf4a1966d7cf34a6b369b8998","unresolved":false,"context_lines":[{"line_number":80,"context_line":"    \u003cpara\u003eThe recommendation for those that are concerned about data leakage"},{"line_number":81,"context_line":"        between volumes is to not use Ubuntu 12.04, but also thin provisioning"},{"line_number":82,"context_line":"        is likely a better option as the I/O and time intension operation of"},{"line_number":83,"context_line":"        overwriting blocks (with zero, via dd) on delete is expensive.\u003c/para\u003e"},{"line_number":84,"context_line":"  \u003c/section\u003e"},{"line_number":85,"context_line":"\u003c/chapter\u003e"}],"source_content_type":"application/xml","patch_set":2,"id":"9a41bdd9_3c59f65a","line":83,"updated":"2015-07-13 22:18:58.000000000","message":"Note that volume encryption can be used to address data leakage.  When the data is no longer needed, the key can be deleted to maintain no leakage.  This assumes a reasonable key manager is used, like Barbican.  This is an alternative to overwriting blocks of data.  It\u0027s definitely a working solution now, though some of the OpenStack volume encryption documentation relating to the key management support and also key deletion instead of overwriting is in the process of being updated.\n\nhttp://docs.openstack.org/security-guide/content/data-privacy-concerns.html","commit_id":"cc9732bf56846af3e2ef0214e9a9578b36a8169c"}]}
