Re: [Openstack-operators] Dynamic Policy

2015-08-05 Thread Fox, Kevin M
As an Op, I've ran into this problem and keep running into it. I would very 
much like a solution.

Its also quite related to the nova instance user issue I've been working on, 
that's needed by the App Catalog project.

So, yes, please keep fighting the good fight.

Thanks,
Kevin

From: Adam Young [ayo...@redhat.com]
Sent: Wednesday, August 05, 2015 7:50 AM
To: openstack-operators@lists.openstack.org
Subject: [Openstack-operators] Dynamic Policy

How do you delegate the ability to delegate?

Lets say you are running a large cloud (purely hypothetical here) and
you want to let a user manage their own project.  They are admin but
they should be able to invite or eject people.

In order to do this, an ordinary user needs to be able to make a role
assignment.  However, Keystone does not support this today:  if you are
admin somewhere, you are admin everywhere:

https://bugs.launchpad.net/keystone/+bug/968696

Access control in OpenStack is controlled by Policy.  An informal survey
of operators shows that most people run with the stock policies such as
the Nova policy:

http://git.openstack.org/cgit/openstack/nova/tree/etc/nova/policy.json

In order to scope admin to the proejct, we would need to have rules that
enforce this scoping:  Evey rule should check that the project_id in the
token provided matches the  project_id of the resource of the API.

If we manage to get the policy files rewritten this way, We then need a
way to limit what roles a user can assign.The default mechanism
would say that a user needs to have an administrative role on the
project (or domain) that they want to assign the role on.

I don't think anything I've written thus far is controversial. Then, why
has it not happened yet? here are the list of problems we need to solve:

1. Operators expect the existing policy files to work as is. Changing
them will break workflow.
2. If everything is scoped, we need a way to delete resources left
orphan when a project is deleted from Keystone and the service does not
get the notification (or know how to handle it).

Of the two, I think the top one is the more difficult to solve. Scoping
everything can be handled via one of two mechanism;  either allow a
power-admin user to get a token scoped to some random project (even if
it has been deleted) or allow a token scoped to an administrative
project to also delete resources for a random project.

Dealing with the existing policy file issues is trickier, and that is
the real reason for the Dynamic Policy  approach:  give the endpoints
the ability to fetch their policy files from Keystone.  If policy goes
from being a configuration file to data, it is managed outside of the
configuration management tools, and becomes much more fluid. This has
risks, and should be an Opt-In mechanism.

Fetching the policy files from Keystone also provides the start of a
richer set of management for policy rules.  Currently, each of the stock
policy files exists only in their seperate git repos.  There is no
sharing of policy rules across projects.  If the policy files were
managed, rule by rule, from a centralized repository,  rules could be
shared, providing, among other things, the ability to enforce
hierarchical roles, roles namespaced to a service, and other, richer
policy management.

Feedback on this approach from operators is greatly appreciated.  I need
to justify the effort that would go in to making this happen, so if you
want it, speak up.

If, on the other hand, you feel that this is needlessly complicated or
would make deployments more difficult, that is important too, and please
let me know.

Finally, if you can see some alternative methods of implementing a more
dynamic access control, please chime in.





___
OpenStack-operators mailing list
OpenStack-operators@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators

___
OpenStack-operators mailing list
OpenStack-operators@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators


Re: [Openstack-operators] Dynamic Policy

2015-08-05 Thread Kris G. Lindgren
We ran into this as well.

What we did is create an external to keystone api, that we expose to our
end users via a UI.  The api will let user create projects (with a
specific defined quota) and also add users with the project admins  role
to the project.  Those admins can add/remove users from the project and
also delete the project.  You can also be a member, where you have the
ability to spin up vm's under the project but not add/remove users or
remove the project.  We also do some other stuff to clean up items in a
project before its deleted.  We are working to move this functionality out
of the current external API and into keystone.  I believe we were going to
look at waffle-haus to add a paste filter to intercept the project create
calls and do the needful.

We also modified the policy.json files for the services that we care about
to add the new roles that we created.

 
Kris Lindgren
Senior Linux Systems Engineer
GoDaddy, LLC.




On 8/5/15, 9:39 AM, Fox, Kevin M kevin@pnnl.gov wrote:

As an Op, I've ran into this problem and keep running into it. I would
very much like a solution.

Its also quite related to the nova instance user issue I've been working
on, that's needed by the App Catalog project.

So, yes, please keep fighting the good fight.

Thanks,
Kevin

From: Adam Young [ayo...@redhat.com]
Sent: Wednesday, August 05, 2015 7:50 AM
To: openstack-operators@lists.openstack.org
Subject: [Openstack-operators] Dynamic Policy

How do you delegate the ability to delegate?

Lets say you are running a large cloud (purely hypothetical here) and
you want to let a user manage their own project.  They are admin but
they should be able to invite or eject people.

In order to do this, an ordinary user needs to be able to make a role
assignment.  However, Keystone does not support this today:  if you are
admin somewhere, you are admin everywhere:

https://bugs.launchpad.net/keystone/+bug/968696

Access control in OpenStack is controlled by Policy.  An informal survey
of operators shows that most people run with the stock policies such as
the Nova policy:

http://git.openstack.org/cgit/openstack/nova/tree/etc/nova/policy.json

In order to scope admin to the proejct, we would need to have rules that
enforce this scoping:  Evey rule should check that the project_id in the
token provided matches the  project_id of the resource of the API.

If we manage to get the policy files rewritten this way, We then need a
way to limit what roles a user can assign.The default mechanism
would say that a user needs to have an administrative role on the
project (or domain) that they want to assign the role on.

I don't think anything I've written thus far is controversial. Then, why
has it not happened yet? here are the list of problems we need to solve:

1. Operators expect the existing policy files to work as is. Changing
them will break workflow.
2. If everything is scoped, we need a way to delete resources left
orphan when a project is deleted from Keystone and the service does not
get the notification (or know how to handle it).

Of the two, I think the top one is the more difficult to solve. Scoping
everything can be handled via one of two mechanism;  either allow a
power-admin user to get a token scoped to some random project (even if
it has been deleted) or allow a token scoped to an administrative
project to also delete resources for a random project.

Dealing with the existing policy file issues is trickier, and that is
the real reason for the Dynamic Policy  approach:  give the endpoints
the ability to fetch their policy files from Keystone.  If policy goes
from being a configuration file to data, it is managed outside of the
configuration management tools, and becomes much more fluid. This has
risks, and should be an Opt-In mechanism.

Fetching the policy files from Keystone also provides the start of a
richer set of management for policy rules.  Currently, each of the stock
policy files exists only in their seperate git repos.  There is no
sharing of policy rules across projects.  If the policy files were
managed, rule by rule, from a centralized repository,  rules could be
shared, providing, among other things, the ability to enforce
hierarchical roles, roles namespaced to a service, and other, richer
policy management.

Feedback on this approach from operators is greatly appreciated.  I need
to justify the effort that would go in to making this happen, so if you
want it, speak up.

If, on the other hand, you feel that this is needlessly complicated or
would make deployments more difficult, that is important too, and please
let me know.

Finally, if you can see some alternative methods of implementing a more
dynamic access control, please chime in.





___
OpenStack-operators mailing list
OpenStack-operators@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman

Re: [Openstack-operators] Dynamic Policy

2015-08-05 Thread Adam Young

On 08/05/2015 12:01 PM, Kris G. Lindgren wrote:

We ran into this as well.

What we did is create an external to keystone api, that we expose to our
end users via a UI.  The api will let user create projects (with a
specific defined quota) and also add users with the project admins  role
to the project.  Those admins can add/remove users from the project and
also delete the project.  You can also be a member, where you have the
ability to spin up vm's under the project but not add/remove users or
remove the project.  We also do some other stuff to clean up items in a
project before its deleted.  We are working to move this functionality out
of the current external API and into keystone.  I believe we were going to
look at waffle-haus to add a paste filter to intercept the project create
calls and do the needful.

We also modified the policy.json files for the services that we care about
to add the new roles that we created.


Were you working around limitation by building an external system to 
Keystone to provide a means of delegating the ability to assign roles?


Would you have wanted to synchronize the roles you defined in your 
Keytone instance with the policy files directly?  Did you have to modify 
policy files beyond the Keystone policy file?




  
Kris Lindgren

Senior Linux Systems Engineer
GoDaddy, LLC.




On 8/5/15, 9:39 AM, Fox, Kevin M kevin@pnnl.gov wrote:


As an Op, I've ran into this problem and keep running into it. I would
very much like a solution.

Its also quite related to the nova instance user issue I've been working
on, that's needed by the App Catalog project.

So, yes, please keep fighting the good fight.

Thanks,
Kevin

From: Adam Young [ayo...@redhat.com]
Sent: Wednesday, August 05, 2015 7:50 AM
To: openstack-operators@lists.openstack.org
Subject: [Openstack-operators] Dynamic Policy

How do you delegate the ability to delegate?

Lets say you are running a large cloud (purely hypothetical here) and
you want to let a user manage their own project.  They are admin but
they should be able to invite or eject people.

In order to do this, an ordinary user needs to be able to make a role
assignment.  However, Keystone does not support this today:  if you are
admin somewhere, you are admin everywhere:

https://bugs.launchpad.net/keystone/+bug/968696

Access control in OpenStack is controlled by Policy.  An informal survey
of operators shows that most people run with the stock policies such as
the Nova policy:

http://git.openstack.org/cgit/openstack/nova/tree/etc/nova/policy.json

In order to scope admin to the proejct, we would need to have rules that
enforce this scoping:  Evey rule should check that the project_id in the
token provided matches the  project_id of the resource of the API.

If we manage to get the policy files rewritten this way, We then need a
way to limit what roles a user can assign.The default mechanism
would say that a user needs to have an administrative role on the
project (or domain) that they want to assign the role on.

I don't think anything I've written thus far is controversial. Then, why
has it not happened yet? here are the list of problems we need to solve:

1. Operators expect the existing policy files to work as is. Changing
them will break workflow.
2. If everything is scoped, we need a way to delete resources left
orphan when a project is deleted from Keystone and the service does not
get the notification (or know how to handle it).

Of the two, I think the top one is the more difficult to solve. Scoping
everything can be handled via one of two mechanism;  either allow a
power-admin user to get a token scoped to some random project (even if
it has been deleted) or allow a token scoped to an administrative
project to also delete resources for a random project.

Dealing with the existing policy file issues is trickier, and that is
the real reason for the Dynamic Policy  approach:  give the endpoints
the ability to fetch their policy files from Keystone.  If policy goes

from being a configuration file to data, it is managed outside of the

configuration management tools, and becomes much more fluid. This has
risks, and should be an Opt-In mechanism.

Fetching the policy files from Keystone also provides the start of a
richer set of management for policy rules.  Currently, each of the stock
policy files exists only in their seperate git repos.  There is no
sharing of policy rules across projects.  If the policy files were
managed, rule by rule, from a centralized repository,  rules could be
shared, providing, among other things, the ability to enforce
hierarchical roles, roles namespaced to a service, and other, richer
policy management.

Feedback on this approach from operators is greatly appreciated.  I need
to justify the effort that would go in to making this happen, so if you
want it, speak up.

If, on the other hand, you feel that this is needlessly

Re: [Openstack-operators] Dynamic Policy

2015-08-05 Thread Marc Heckmann
Echoing what others have said, we too have an abstraction layer in the
form of a custom UI to allow project owners to create/delete users.

As for your questions Adam, having policy in the Keystone database as
data seems like a no brainer. As you suggest it enables us to do so much
more.

For problem #2, that's already a problem today, so I don't see how it
has an impact (other than the problem of giving the keys to end-users).
In fact, I'd argue that it's an even bigger problem today as an admin
(i.e admin everywhere) can delete a project with running resources. A
project_admin role limited in scope could be delegated the rights to
create/delete users but not projects.

-m

On Wed, 2015-08-05 at 18:15 +, Kris G. Lindgren wrote:
 See inline.
 
  
 Kris Lindgren
 Senior Linux Systems Engineer
 GoDaddy, LLC.
 
 
 
 On 8/5/15, 11:19 AM, Adam Young ayo...@redhat.com wrote:
 
 On 08/05/2015 12:01 PM, Kris G. Lindgren wrote:
  We ran into this as well.
 
  What we did is create an external to keystone api, that we expose to our
  end users via a UI.  The api will let user create projects (with a
  specific defined quota) and also add users with the project admins
 role
  to the project.  Those admins can add/remove users from the project and
  also delete the project.  You can also be a member, where you have the
  ability to spin up vm's under the project but not add/remove users or
  remove the project.  We also do some other stuff to clean up items in a
  project before its deleted.  We are working to move this functionality
 out
  of the current external API and into keystone.  I believe we were going
 to
  look at waffle-haus to add a paste filter to intercept the project
 create
  calls and do the needful.
 
  We also modified the policy.json files for the services that we care
 about
  to add the new roles that we created.
 
 Were you working around limitation by building an external system to
 Keystone to provide a means of delegating the ability to assign roles?
 
 Yes. Basically we wrapped a function that required admin permissions in an
 keystone API - so that non-admin users could do some admin level tasks.
 Also, we have ran into the admin on a project in keystone == admin
 everywhere problem.  We were using a created project_admin role to get
 around that limitation.
 
 
 Would you have wanted to synchronize the roles you defined in your
 Keytone instance with the policy files directly?  Did you have to modify
 policy files beyond the Keystone policy file?
 
 Yes. And Yes, we did modify other services policy files as well to handle
 the newly created project_admin role.
 
 
 
  

  Kris Lindgren
  Senior Linux Systems Engineer
  GoDaddy, LLC.
 
 
 
 
  On 8/5/15, 9:39 AM, Fox, Kevin M kevin@pnnl.gov wrote:
 
  As an Op, I've ran into this problem and keep running into it. I would
  very much like a solution.
 
  Its also quite related to the nova instance user issue I've been
 working
  on, that's needed by the App Catalog project.
 
  So, yes, please keep fighting the good fight.
 
  Thanks,
  Kevin
  
  From: Adam Young [ayo...@redhat.com]
  Sent: Wednesday, August 05, 2015 7:50 AM
  To: openstack-operators@lists.openstack.org
  Subject: [Openstack-operators] Dynamic Policy
 
  How do you delegate the ability to delegate?
 
  Lets say you are running a large cloud (purely hypothetical here) and
  you want to let a user manage their own project.  They are admin but
  they should be able to invite or eject people.
 
  In order to do this, an ordinary user needs to be able to make a role
  assignment.  However, Keystone does not support this today:  if you are
  admin somewhere, you are admin everywhere:
 
  https://bugs.launchpad.net/keystone/+bug/968696
 
  Access control in OpenStack is controlled by Policy.  An informal
 survey
  of operators shows that most people run with the stock policies such as
  the Nova policy:
 
  http://git.openstack.org/cgit/openstack/nova/tree/etc/nova/policy.json
 
  In order to scope admin to the proejct, we would need to have rules
 that
  enforce this scoping:  Evey rule should check that the project_id in
 the
  token provided matches the  project_id of the resource of the API.
 
  If we manage to get the policy files rewritten this way, We then need a
  way to limit what roles a user can assign.The default mechanism
  would say that a user needs to have an administrative role on the
  project (or domain) that they want to assign the role on.
 
  I don't think anything I've written thus far is controversial. Then,
 why
  has it not happened yet? here are the list of problems we need to
 solve:
 
  1. Operators expect the existing policy files to work as is. Changing
  them will break workflow.
  2. If everything is scoped, we need a way to delete resources left
  orphan when a project is deleted from Keystone

Re: [Openstack-operators] Dynamic Policy

2015-08-05 Thread Matt Fischer
Jumping in with another us too here. We have some custom Horizon
extensions that allow project owners to manage some of this stuff.

On Wed, Aug 5, 2015 at 4:14 PM, Marc Heckmann marc.heckm...@ubisoft.com
wrote:

 Echoing what others have said, we too have an abstraction layer in the
 form of a custom UI to allow project owners to create/delete users.

 As for your questions Adam, having policy in the Keystone database as
 data seems like a no brainer. As you suggest it enables us to do so much
 more.

 For problem #2, that's already a problem today, so I don't see how it
 has an impact (other than the problem of giving the keys to end-users).
 In fact, I'd argue that it's an even bigger problem today as an admin
 (i.e admin everywhere) can delete a project with running resources. A
 project_admin role limited in scope could be delegated the rights to
 create/delete users but not projects.

 -m

 On Wed, 2015-08-05 at 18:15 +, Kris G. Lindgren wrote:
  See inline.
  
 
  Kris Lindgren
  Senior Linux Systems Engineer
  GoDaddy, LLC.
 
 
 
  On 8/5/15, 11:19 AM, Adam Young ayo...@redhat.com wrote:
 
  On 08/05/2015 12:01 PM, Kris G. Lindgren wrote:
   We ran into this as well.
  
   What we did is create an external to keystone api, that we expose to
 our
   end users via a UI.  The api will let user create projects (with a
   specific defined quota) and also add users with the project admins
  role
   to the project.  Those admins can add/remove users from the project
 and
   also delete the project.  You can also be a member, where you have
 the
   ability to spin up vm's under the project but not add/remove users or
   remove the project.  We also do some other stuff to clean up items in
 a
   project before its deleted.  We are working to move this functionality
  out
   of the current external API and into keystone.  I believe we were
 going
  to
   look at waffle-haus to add a paste filter to intercept the project
  create
   calls and do the needful.
  
   We also modified the policy.json files for the services that we care
  about
   to add the new roles that we created.
  
  Were you working around limitation by building an external system to
  Keystone to provide a means of delegating the ability to assign roles?
 
  Yes. Basically we wrapped a function that required admin permissions in
 an
  keystone API - so that non-admin users could do some admin level tasks.
  Also, we have ran into the admin on a project in keystone == admin
  everywhere problem.  We were using a created project_admin role to get
  around that limitation.
 
  
  Would you have wanted to synchronize the roles you defined in your
  Keytone instance with the policy files directly?  Did you have to modify
  policy files beyond the Keystone policy file?
 
  Yes. And Yes, we did modify other services policy files as well to handle
  the newly created project_admin role.
 
 
  
   
  
   Kris Lindgren
   Senior Linux Systems Engineer
   GoDaddy, LLC.
  
  
  
  
   On 8/5/15, 9:39 AM, Fox, Kevin M kevin@pnnl.gov wrote:
  
   As an Op, I've ran into this problem and keep running into it. I
 would
   very much like a solution.
  
   Its also quite related to the nova instance user issue I've been
  working
   on, that's needed by the App Catalog project.
  
   So, yes, please keep fighting the good fight.
  
   Thanks,
   Kevin
   
   From: Adam Young [ayo...@redhat.com]
   Sent: Wednesday, August 05, 2015 7:50 AM
   To: openstack-operators@lists.openstack.org
   Subject: [Openstack-operators] Dynamic Policy
  
   How do you delegate the ability to delegate?
  
   Lets say you are running a large cloud (purely hypothetical here) and
   you want to let a user manage their own project.  They are admin
 but
   they should be able to invite or eject people.
  
   In order to do this, an ordinary user needs to be able to make a role
   assignment.  However, Keystone does not support this today:  if you
 are
   admin somewhere, you are admin everywhere:
  
   https://bugs.launchpad.net/keystone/+bug/968696
  
   Access control in OpenStack is controlled by Policy.  An informal
  survey
   of operators shows that most people run with the stock policies such
 as
   the Nova policy:
  
  
 http://git.openstack.org/cgit/openstack/nova/tree/etc/nova/policy.json
  
   In order to scope admin to the proejct, we would need to have rules
  that
   enforce this scoping:  Evey rule should check that the project_id in
  the
   token provided matches the  project_id of the resource of the API.
  
   If we manage to get the policy files rewritten this way, We then
 need a
   way to limit what roles a user can assign.The default mechanism
   would say that a user needs to have an administrative role on the
   project (or domain) that they want to assign the role on.
  
   I don't think anything I've written thus far

Re: [Openstack-operators] Dynamic Policy

2015-08-05 Thread Xav Paice
On 06/08/15 04:01, Kris G. Lindgren wrote:
 We ran into this as well.

 What we did is create an external to keystone api, that we expose to our
 end users via a UI.  The api will let user create projects (with a
 specific defined quota) and also add users with the project admins  role
 to the project.  Those admins can add/remove users from the project and
 also delete the project.  You can also be a member, where you have the
 ability to spin up vm's under the project but not add/remove users or
 remove the project.  We also do some other stuff to clean up items in a
 project before its deleted.  We are working to move this functionality out
 of the current external API and into keystone.  I believe we were going to
 look at waffle-haus to add a paste filter to intercept the project create
 calls and do the needful.
We're working on something similar, but haven't rolled it to production
yet.  Is your code available open-source somewhere?  Ours will be once
it's clean-ish and tested properly, but not yet lest we lead someone
into pain and misery.

One of the goals you didn't mention above, but I'm sure you also noted,
was that changing passwords or setting an initial password isn't exactly
clear - we're working on getting a one time link set that an initial
user can be sent to be able to set their own first password.

 We also modified the policy.json files for the services that we care about
 to add the new roles that we created.

Not the easiest task to either get right, or make sure that the files
are distributed around in an HA setting.  But absolutely necessary.

 
  
 Kris Lindgren
 Senior Linux Systems Engineer
 GoDaddy, LLC.




___
OpenStack-operators mailing list
OpenStack-operators@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators


Re: [Openstack-operators] Dynamic Policy for Access Control

2015-04-10 Thread Adam Young

On 04/07/2015 11:36 AM, Marc Heckmann wrote:

My apologies for not seeing this sooner as the topic is of great
interest. My comments below inline..

On Mon, 2015-02-23 at 16:41 +, Tim Bell wrote:

-Original Message-
From: Adam Young [mailto:ayo...@redhat.com]
Sent: 23 February 2015 16:45
To: openstack-operators@lists.openstack.org
Subject: [Openstack-operators] Dynamic Policy for Access Control

Admin can do everything!  has been a common lament, heard for multiple
summits.  Its more than just a development issue.  I'd like to fix that.  I 
think we
all would.


I'm looking to get some Operator input on the Dynamic Policy issue. I wrote up a
general overview last fall, after the Kilo summit:

https://adam.younglogic.com/2014/11/dynamic-policy-in-keystone/

I agree with everything in that post.

I would add the following comments:

1. I doubt this will change, but to be clear, we cannot lose the ability
to create custom roles and limit the capabilities of the standard roles.
For example, if I wanted to limit the ability to make images public or
limit the ability to associate a floating IP.
That is a baseline consideration.  We are hoping to  make custom roles 
the norm.






2. This work should not be done in vacuum. Ideally, Horizon support for
assigning roles to users and editing policy should be released at the
same time or not long after. I realize that this is easier said than
done, but it will be important in order for the feature to get used.
Role assignments will be done the same way they are now, as Horizon 
fetches the list of roles from Keystone.


Editing policy will require a new UI.  I don't see that happening in 
Horizon until the Keystone mechanism is finalized.


Thanks for the response.  We can carry on the conversation at the Summit.




Some of what I am looking at is:  what are the general roles that Operators
would like to have by default when deploying OpenStack?


As I described in 
http://openstack-in-production.blogspot.ch/2015/02/delegation-of-roles.html, 
we've got (mapped  per-project to an AD group)

- operator (start/stop/reboot/console)
- accounting (read ceilometer data for reporting)


I've submitted a talk about policy for the Summit:
https://www.openstack.org/vote-vancouver/presentation/dynamic-policy-for-
access-control

If you want, please vote for it, but even if it does not get selected, I'd like 
to
discuss Policy with the operators at the summit, as input to  the Keystone
development effort.


Sounds like a good topic for the ops meetup track.


Feedback greatly welcome.

___
OpenStack-operators mailing list
OpenStack-operators@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators

___
OpenStack-operators mailing list
OpenStack-operators@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators





___
OpenStack-operators mailing list
OpenStack-operators@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators


Re: [Openstack-operators] Dynamic Policy for Access Control

2015-04-07 Thread Marc Heckmann
My apologies for not seeing this sooner as the topic is of great
interest. My comments below inline..

On Mon, 2015-02-23 at 16:41 +, Tim Bell wrote:
  -Original Message-
  From: Adam Young [mailto:ayo...@redhat.com]
  Sent: 23 February 2015 16:45
  To: openstack-operators@lists.openstack.org
  Subject: [Openstack-operators] Dynamic Policy for Access Control
  
  Admin can do everything!  has been a common lament, heard for multiple
  summits.  Its more than just a development issue.  I'd like to fix that.  I 
  think we
  all would.
  
  
  I'm looking to get some Operator input on the Dynamic Policy issue. I wrote 
  up a
  general overview last fall, after the Kilo summit:
  
  https://adam.younglogic.com/2014/11/dynamic-policy-in-keystone/

I agree with everything in that post.

I would add the following comments:

1. I doubt this will change, but to be clear, we cannot lose the ability
to create custom roles and limit the capabilities of the standard roles.
For example, if I wanted to limit the ability to make images public or
limit the ability to associate a floating IP.

2. This work should not be done in vacuum. Ideally, Horizon support for
assigning roles to users and editing policy should be released at the
same time or not long after. I realize that this is easier said than
done, but it will be important in order for the feature to get used.

  
  
  Some of what I am looking at is:  what are the general roles that Operators
  would like to have by default when deploying OpenStack?
  
 
 As I described in 
 http://openstack-in-production.blogspot.ch/2015/02/delegation-of-roles.html, 
 we've got (mapped  per-project to an AD group)
 
 - operator (start/stop/reboot/console)
 - accounting (read ceilometer data for reporting)
 
  I've submitted a talk about policy for the Summit:
  https://www.openstack.org/vote-vancouver/presentation/dynamic-policy-for-
  access-control
  
  If you want, please vote for it, but even if it does not get selected, I'd 
  like to
  discuss Policy with the operators at the summit, as input to  the Keystone
  development effort.
  
 
 Sounds like a good topic for the ops meetup track.
 
  Feedback greatly welcome.
  
  ___
  OpenStack-operators mailing list
  OpenStack-operators@lists.openstack.org
  http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators
 
 ___
 OpenStack-operators mailing list
 OpenStack-operators@lists.openstack.org
 http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators


___
OpenStack-operators mailing list
OpenStack-operators@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators