Objective-C (Snow Leopard의 Xcode 3.2)에서 특정 사이트를 선택적으로 차단하거나 특정 사이트 만 허용 (따라서 다른 모든 사이트 차단) 할 수있는 프로그램을 작성하고 있습니다. 이 프로그램의 논리는 다소 단순합니다. 나는 완전한 인터넷 접속이있을 때 산만 해지는 경향이있다. 그러나 일과 관련된 웹 사이트에 도착하기 위해서는 근무 시간 동안 인터넷에 접속해야한다. 분명히 이것은 영구적 인 블록이 아니지만 너무 많이 방황하는 것을 보았을 때만 집중하는 데 도움이됩니다.관리자 암호를 묻지 않고 root로 응용 프로그램을 실행하는 방법은 무엇입니까?
현재 관리자 권한을 얻기 위해 AppleScript를 통해 호출되는 Unix 스크립트를 사용하고 있습니다. 그런 다음 ipfw 규칙을 활성화하고 특정 기간이 지나면 전체 인터넷 액세스를 복원합니다. 간단하고 효과적이지만 표준 사용자로 실행하고 있기 때문에 "오프라인"으로 갈 때마다 관리자 암호를 입력하는 것이 번거로워집니다. 또한 Xcode 및 Objective-C로 작업하는 방법을 배울 수있는 좋은 기회입니다. 현재 모든 것은 예상대로 작동하여 실제 차단을 뺀 것입니다. 목록에 여러 사이트를 추가하고 이러한 웹 사이트를 차단하거나 허용할지 여부를 지정할 수 있으며 "오프라인"상태를 유지할 시간을 지정하여 차단을 "시작"할 수 있습니다.
그러나 Objective-C에서 권한이 부여 된 Unix 명령을 어떻게 실행할 수 있는지에 대한 명확한 정보를 얻기가 어렵습니다. 이상적으로, 관리자 계정에 관한 정보를 키 체인에 저장하여 나중에 사용할 수 있기를 바랍니다. 버튼을 클릭하면 편리하게 "오프라인"모드로 이동할 수 있습니다. 좀 더 이상적으로, 특권이 부여 된 유닉스 명령에 의존 할 필요없이이 특정 사용자에 대한 일부/모든 웹 사이트에 대한 액세스를 차단할 수있는 Objective-C 클래스가있을 수 있습니다. 세 번째 가능성은 루트 권한으로이 프로그램을 시작하고 필요할 때까지 사용 권한을 줄이는 것입니다.하지만이 프로그램은 OS X의 메뉴 표시 줄에 중첩 된 GUI 응용 프로그램이므로 결과는 다소 어색하며 각각을 실행하게됩니다. 루트 권한으로 항상 쉬운 작업이 아닙니다.
나에게 조언이나 조언을 해 줄 수있는 사람은 누구입니까? 제발, 안보 경고, 나는 완전히 내가 알고 싶은 일은 잠재적 인 보안 위협입니다.
Firefox를 사용하는 경우 이미 LeechBlock이라는 플러그인이 있습니다. https://addons.mozilla.org/en-US/firefox/addon/4476 (물론 Safari 나 다른 브라우저를 사용하지 않도록 조처해야합니다. ;)) –
질문을 짧게 한 단락으로 줄이면 더 많은 사람들이 반응 할 것이라고 확신합니다. 이 경우 모든 상황을 알 필요가 없습니다. –