Joyent Base64 1.8.1 SmartOS 이미지의 SMF (Server Management Facility)에서 서버 프로세스를 실행하고 있습니다.
SmartOS를 사용하지 않는 사람들을 위해, 그것은 KVM을 통한 IllumOS의 클라우드 기반 배포입니다. 그러나 본질적으로 Solaris와 비슷하며 OpenSolaris에서 상속됩니다. 따라서 SmartOS를 사용하지 않더라도 ServerFault에 대한 Solaris 지식을 활용할 수 있기를 바랍니다.
내 문제는 권한이없는 사용자가 소유 한 서비스를 다시 시작할 수 있기를 원한다는 것입니다. RBAC를 사용하고 권한 부여를 추가하고 /etc/security/auth_attr
해당 권한을 사용자와 연관 시킴으로써이를 수행하는 방법을 알아 냈습니다 .
그런 다음 서비스의 SMF 매니페스트에 다음을 추가했습니다.
<property_group name='general' type='framework'>
<!-- Allow to be restarted-->
<propval name='action_authorization' type='astring'
value='solaris.smf.manage.my-server-process' />
<!-- Allow to be started and stopped -->
<propval name='value_authorization' type='astring'
value='solaris.smf.manage.my-server-process' />
</property_group>
그리고 이것은 가져올 때 잘 작동합니다. 권한이없는 사용자는 자체 서버 프로세스를 다시 시작, 시작 및 중지 할 수 있습니다 (자동 코드 배포 용).
그러나 SMF 매니페스트를 내 보내면이 구성 데이터가 사라집니다. 해당 섹션에서 볼 수있는 것은 다음과 같습니다.
<property_group name='general' type='framework'>
<property name='action_authorization' type='astring'/>
<property name='value_authorization' type='astring'/>
</property_group>
왜 이런 일이 일어나는지 아는 사람이 있습니까? 내 구문이 잘못 되었습니까, 아니면 단순히 SMF를 잘못 사용하고 있습니까?