2010-12-20 3 views
2

Mac OS X에서 보안 에이전트 플러그인을 작성 중이며 사용자가 전환 사용자를 수행 할 수 있도록 허용하려고합니다 ('전환 사용자'버튼과 동일). 계정을 잠그면 표시됩니다.프로그래밍 방식으로 macosx에서 사용자 전환을 수행하는 방법

은 몇 가지 조사 후, 나는 명령 줄에서 다음과 같은 솔루션을 this thread을 발견 : 사용자가 로그인 할 때

/System/Library/CoreServices/Menu\ Extras/User.menu/Contents/Resources/CGSession -suspend 

이 명령 줄을 실행하기는 잘 작동하지만, 보안 에이전트 플러그인의 맥락에서. : "보안 에이전트는 제한된 권한으로 실행되므로 사용자는 그래픽 사용자 인터페이스를 사용하여 실제로 인증 받아야합니다. 그래픽 사용자 인터페이스 요소는 터미널과 같은 명령 줄 인터페이스를 통해 사용할 수 없습니다 응용 프로그램 또는 보안 셸 (ssh) 원격 세션 "

따라서 명령 행 호출이 실행되지 않습니다. 사과 이벤트를 보내는 것과 같이 스위치 사용자를 시뮬레이트하는 다른 솔루션이 있습니까? 나는 다른 해결책을 찾지 못했습니다.

미리 감사드립니다. 감사합니다.

답변

0

각 사용자에 대해 실행되는 LaunchAgent를 만들어보십시오. Security Agent 플러그인에서 현재 콘솔 사용자 (예 : BSD 소켓 사용)의 에이전트에 연결하고 CGSession 명령을 실행하도록 명령하십시오.

관련 문제