From: Sage Weil Date: Tue, 7 Mar 2017 20:58:27 +0000 (-0500) Subject: mon/MonCap: expand 'profile mgr' caps X-Git-Tag: v12.0.2~252^2~40 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=8c61e405198ea469ca101b6ea38c8f5b912315b9;p=ceph.git mon/MonCap: expand 'profile mgr' caps Signed-off-by: Sage Weil --- diff --git a/src/mon/MonCap.cc b/src/mon/MonCap.cc index b4bd1c5098e6..972d51651fa6 100644 --- a/src/mon/MonCap.cc +++ b/src/mon/MonCap.cc @@ -137,7 +137,25 @@ void MonCapGrant::expand_profile(EntityName name) const profile_grants.push_back(MonCapGrant("osd pool rmsnap")); profile_grants.push_back(MonCapGrant("log", MON_CAP_W)); } - if (profile == "osd" || profile == "mds" || profile == "mon") { + if (profile == "mgr") { + profile_grants.push_back(MonCapGrant("mgr", MON_CAP_ALL)); + profile_grants.push_back(MonCapGrant("log", MON_CAP_W)); + profile_grants.push_back(MonCapGrant("mon", MON_CAP_R)); + profile_grants.push_back(MonCapGrant("mds", MON_CAP_R)); + profile_grants.push_back(MonCapGrant("osd", MON_CAP_R)); + profile_grants.push_back(MonCapGrant("config-key", MON_CAP_R)); + string prefix = string("daemon-private/mgr/"); + profile_grants.push_back(MonCapGrant("config-key get", "key", + StringConstraint("", prefix))); + profile_grants.push_back(MonCapGrant("config-key put", "key", + StringConstraint("", prefix))); + profile_grants.push_back(MonCapGrant("config-key exists", "key", + StringConstraint("", prefix))); + profile_grants.push_back(MonCapGrant("config-key delete", "key", + StringConstraint("", prefix))); + } + if (profile == "osd" || profile == "mds" || profile == "mon" || + profile == "mgr") { string prefix = string("daemon-private/") + stringify(name) + string("/"); profile_grants.push_back(MonCapGrant("config-key get", "key", StringConstraint("", prefix))); profile_grants.push_back(MonCapGrant("config-key put", "key", StringConstraint("", prefix)));