2006/08/08

지정된 애플리케이션에 특권 할당을 위한 RBAC 구성 방법(Access Service)

다음의 순서를 잘 지켜서 따라하세요.(웬만하면 cut&paste 하세요)
아래의 각 명령어 앞에있는 '#' 기호는 쉘 프롬프트를 의미하는 것입니다.
복사할때는 '#'은 복사하지 마세요.
그리고, 각 실행은 한줄 명령어입니다. 여러줄로 나누어져 보이더라도, 한줄로 만들어서 실행하세요.

1) 보안 실행 환경 구성(RBAC)
#echo "# AS RBAC profile configuration for AS runtime environment" >> /etc/security/prof_attr
#echo "AS Management:::AS runtime Environment Administration:auths=solaris.network.*;help=RtASMgmt.html" >> /etc/security/prof_attr
#echo "# AS RBAC execution configuration" >> /etc/security/exec_attr
#echo "AS Management:solaris:cmd:::/htsteam/AS/bin/AsCL:euid=0" >> /etc/security/exec_attr
#echo "AS Management:solaris:cmd:::/htsteam/AS/bin/AsCH:euid=0" >> /etc/security/exec_attr
#echo "AS Management:solaris:cmd:::/htsteam/AS/bin/trload:euid=0" >> /etc/security/exec_attr


2) 사용자 특성 변경
# usermod -P "AS Management" htsteam

와 같이 실행하면, 일단 구성은 된 것입니다. 정상적으로 되었는 지 확인하기 위해서는
htsteam user를 logout한 후 다시 로그인하십시요.

로그인 한후
profiles -l
라는 명령을 실행해본 후에 htsteam 사용자에 AS Managment 역할과 실행할 수 있는 화일이
할당된 것이 보이면 정상적으로 구성된 것입니다.

예상하기에 다음과 같이 보일 겁니다.

      AS Management:
          /htsteam/AS/bin/AsCL    euid=0
          /htsteam/AS/bin/AsCH    euid=0
          /htsteam/AS/bin/trload    euid=0


이렇게 나타나면, 일단 htsteam이라는 사용자가 AsCL을 실행할 수 있게됩니다.
그런데,주어진 역할에 따른 애플리케이션을 실행할때에는 실행하는 방법이 별도로 있습니다.
즉, 위와 같이 나왔더라도, AsCL을 실행하기 위해서는 다음과 같이 특수 커맨드를 이용해야 합니다.

#pfexec AsCL


그냥 AsCL을 실행시키면 에러가 날겁니다. 차이를 느껴보세요.
AsCL관련한 애플리케이션을 시작시켜주는 쉘 스크립에 넣어놓으면 그리 불편하지 않을 겁니다.

혹시 불편하다고 불평하는 분 계실 수 있는데, 이렇게 하는 이유는 '보안'을 위해서 그런 겁니다.
리눅스나 윈도우즈와 비교하지 말기를 바랍니다. 차원이 다릅니다.

해보시고, 문제가 있으시면 연락주십시요.

썬에 서비스를 구매하시면 이런 고급 서비스를 받을 수 있음을 필히 주지시켜 주십시요.

한국 썬
김봉환/


백경민 쓴 글:

안녕하세요. 부장님.

 

이트레이드증권 시스템 80포트 사용 관련해서

 

오전에 전화드린 백경민입니다.

 

바쁘신중에 불편을 드려 죄송합니다.

 

현재 문제는 80포트를 사용하는데 있어 일반유저가 아닌

 

루트유저 권한으로 실행해야 된다는 것입니다.

 

현 개발중인 AP에서 80포트와 연관이 있는 Process는 다음과 같습니다.

 

- user:group   ->  htsteam:other ( 80포트 실행 권한이 부여되어야할 user)

 

/htsteam/AS/bin/AsCL

/htsteam/AS/bin/AsCH

/htsteam/AS/bin/trload

 

실제 80포트를 열어주는 Process는 AsCL 이며 이와 연계되어 AsCH이

 

공유 메모리를 생성하게 됩니다. 문제는 장중에 변경이 일어났을시 AsCH는

 

클라이언트와 연결되어 있는 관계로 공유 메모리를 재생성 할수없는 문제가

 

있어 위의 trload라는 Process를 추가해 사용하게 되어있습니다.

 

위의 서비스를 하는데 있어 setuid를 사용하여 문제를 해결하려 했으나

 

보안과 관리상의 문제가 큰 부분이 있어 이트레이드 담당자께서는 앞서 말씀드린

 

부분(보안, 관리)을 보완할수 있는 방법을 요청하고 계십니다.

 

시스템 자체가 try&buy로 서비스를 받을수 없다는건 알지만 고객 관리 차원에서

 

머리숙여 부탁드리겠습니다.

 

감사합니다.

 

백경민 드림.(phone: 010-9944-3871)

 

 

 


댓글 없음: