posix thread 기반 다중접속 서버를 만드는중 유저권한문제
글쓴이: jx2h / 작성시간: 화, 2007/01/23 - 5:36오후
쳇팅서버인데
서버는 쓰레드기반으로 돌고있으며 db인증을 합니다(db상의 유저정보는 시스템유저와 동일)
파일전송기능을 추가하였는데 현재는 서버가 root로 실행되기 때문에 모든유저가
root권한으로 파일을 핸들합니다--;
나름대로 해결책을 강구해본결과 유저별로 생성되는 thread 딴에서 프로세스 소유자를 해당유저로 변경하면 될 듯 한데요
setuid를 사용가능한가요? 아니면 다른 해결책이라도 제시해주시면 감사하겠습니다
Forums:


multithreaded application의 경우
multithreaded application의 경우 setuid가 하나의 쓰레드가
아닌 모든 쓰레드 그룹에 적용되는 걸로 알고 있습니다.
다른 방법을 생각해 보심이...
도움이 못 되 지송~
/***************************************
Being the one is just like being in love.
***************************************/
루트권한으로 돌리지 마세요.
채팅서버 자체가 루트 권한을 가지고 운영되는 좋지 않습니다.
프로세스 기동시 루트권한이 반드시 필요한 경우라고 하더라도 그 필요한 경우까지만 루트권한으로 실행하시고 채팅서버 프로세스를 운영하는 일반 유저 권한으로 전환하시는 것이 좋습니다.
그럼 고민하시는 것은 자동 해결 되실 듯 한데요.