ConsoleKit과 PolicyKit이란 무엇입니까? 어떻게 작동하나요?

ConsoleKit과 PolicyKit이란 무엇입니까? 어떻게 작동하나요?

나는 최근 GNU/Linux가 ConsoleKit과 PolicyKit을 사용하고 있다는 것을 발견했습니다. 그것들은 무엇을 위해 사용됩니까? 어떻게 작동하나요?

가장 좋은 대답은 각 사람이 해결하려고 하는 문제가 무엇인지, 그리고 어떻게 해결하는지 설명해야 합니다.

저는 이런 것들이 존재하지 않았던 시절부터 오랫동안 GNU/Linux를 사용해왔습니다. 저는 Slackware를 사용하고 있으며 최근에는 Gentoo를 사용하고 있습니다. 저는 고급 사용자/관리자/개발자이므로 답변은 최대한 자세하고 정확할 수 있습니다(그리고 그래야 합니다!). 나는 이러한 것들이 어떻게 작동하는지 이해하여 (사용자 또는 개발자로서) 가능한 최선의 방법으로 사용할 수 있기를 원합니다.

답변1

콘솔 툴킷(문서)는 사용자 세션(즉, 사용자가 로그인하는 위치)을 추적하는 서비스입니다. 로그아웃하지 않고도 사용자를 전환할 수 있습니다(한 명의 사용자가 활성 상태인 동안 여러 사용자가 동시에 동일한 하드웨어에 로그인할 수 있음). 또한 세션이 "로컬"인지, 즉 사용자가 하드웨어에 직접 액세스할 수 있는지(원격 액세스보다 더 안전한 것으로 간주될 수 있음) 확인하는 데에도 사용됩니다.

현재 ConsoleKit은 대부분 다음으로 대체됩니다.로그인했습니다, 이것은 다음의 일부입니다체계, 독립 실행형 버전이 있지만엘로킨드.

폴킷(이전에는 PolicyKit으로 알려짐) 문서데스크탑 환경 내에서 기능을 미세 조정할 수 있습니다. 전통적으로 권한이 있는 사용자(루트)만이 네트워크를 구성할 수 있었습니다. 그러나 서버 환경에서는 예를 들어 노트북의 핫스팟 연결을 허용하지 않는 것이 너무 제한적이라고 가정하는 것이 합리적입니다. 그러나 여전히 이 사람에게 전체 권한(예: 프로그램 설치)을 부여하고 싶지 않거나 특정 사용자에게 옵션을 제한하고 싶을 수도 있습니다(예: 자녀의 노트북에서는 보호자 필터와 함께 '신뢰할 수 있음'만 사용). 회로망). 내가 기억하는 한 다음과 같이 작동합니다.

  • 프로그램은 dbus를 통해 작업에 대한 메시지를 데몬으로 보냅니다.
  • 데몬은 polkit 라이브러리/구성(실제로는 polkit 데몬)을 사용하여 사용자가 작업을 수행할 수 있는지 여부를 결정합니다. 특정 조건(예: 비밀번호 입력 또는 하드웨어 액세스)을 충족해야 하는 상황이 발생할 수 있습니다.
  • 데몬은 이를 기반으로 작업을 수행합니다(인증 오류를 반환하거나 작업을 수행함).

관련 정보