Tom Whitten wrote:
> Tony Nguyen writes:
>   
>> Tom Whitten wrote:
>>     
>>> Tony Nguyen writes:
>>>   
>>>       
>>>> A quick poll here to get input from folks. The background for this is in
>>>>
>>>> 6834760 svcadm shouldn't assert() when not enough privileges
>>>>
>>>> In summary, since the integration of 6762307, user needs both 
>>>> solaris.smf.modify and solaris.smf.manage to run svcadm enable/disable 
>>>> which is a regression to the policy in smf_security(5).
>>>>
>>>> In the evaluation of 6834760, I listed a couple possible solutions. A 
>>>> chat with Liane convinced me the most reasonable solution is to expand 
>>>> the privilege for solaris.smf.modify, making it a superset of 
>>>> solaris.smf.manage. In other words, users with solaris.smf.modify will 
>>>> be able to perform service actions granted to solaris.smf.manage (e.g. 
>>>> refresh/restart/clear/mark). At the moment, the differences between 
>>>> privileges granted to the mentioned authorizations are blurry and 
>>>> perhaps inconsistent:
>>>>
>>>> - Currently, users with smf.modify can fake restart and clear actions by 
>>>> disabling then enabling services.
>>>>
>>>> - solaris.smf.modify also allows service/instance/property modifications 
>>>> but doesn't allow service refresh. So users with smf.modify 
>>>> authorization cannot fully modify configurations.
>>>>
>>>> Making solaris.smf.modify to have privileges granted to 
>>>> solaris.smf.manage allows users to properly perform restart/clear 
>>>> actions and correctly make changes to configuration. The proposed 
>>>> solution also implied allowing users with solaris.smf.modify 
>>>> authorization to do svcadm mark.
>>>>
>>>> Feedback/comments are appreciated before I start looking at configd code.
>>>>
>>>> cheers,
>>>> -tony
>>>> _______________________________________________
>>>> smf-discuss mailing list
>>>> smf-discuss at opensolaris.org
>>>>     
>>>>         
>>> The idea of making smf.modify a superset of smf.manage makes sense to me.
>>> smf.modify allows the user to add, delete, or modify  services, etc.  If
>>> you can add or delete a service, it seems logical that you should also be
>>> allowed to enable it.
>>>
>>>   
>>>       
>> Tom,
>>
>> User with smf.modify actually can enable/disable services today. Indeed, 
>> it's logical that user who can modify, enable, disable and clear and 
>> restart through workarounds, be able to perform those actions through 
>> official svcadm subcommands.
>>
>> -tony
>>     
>
> I guess I'm a little slow today.  If a user with smf.modify can
> enable/disable services, why is it necessary to make smf.modify a
> superset of smf.manage?
>   
Sorry, I wasn't clear. A user with smf.modify is supposed to be able to 
enable/disable services. The fix for 6834760 made all svcadm subcommands 
modify properties in restarter_actions property group. Changes to 
restarter_actions pg requires smf.manage authorization thus user with 
only smf.modify no longer can disable/enable services. The proposed 
solution will allow user with smf.modify to make changes to 
restarter_actions pg and effective has all privileges granted to smf.manage.

-tony

Reply via email to