我使用 MacOS 10.6.1 中的家长控制功能来限制孩子使用电脑的时间。有时,我的孩子似乎获得了比他们应得的更多的时间,或者在一天中他们不应该获得的时间使用电脑。系统可能错误地允许他们使用电脑(或让他们留在电脑中)。或者,他们可能找到了一种授权更多时间的方法,例如使用管理员密码。
如何查看使用管理员密码覆盖家长控制的事件列表,例如允许他们登录、给他们更多时间、授权应用程序或网站等?
我看过了(非常有用)邮政关于如何读取家长控制保存的 .data 文件,但该文件并未告诉我上述内容。
答案1
相关信息以非常技术性、非常详细的方式记录在文件中/var/log/secure.log
。不幸的是,它没有记录授权的具体操作,在大多数情况下,它只是com.apple.familycontrols.override
。
我刚刚创建了一个启用了家长控制的用户帐户child
(UID 503),但仍然处于“上学日”的配置中系统偏好设置,所以没有权限登录。然后我输入了我的管理员用户(名为danielbeck
,UID 501)和密码以允许它,这就是它在日志文件中的样子:
Dec 13 09:24:14 Servus10 com.apple.SecurityServer[28]: Succeeded authorizing right 'com.apple.familycontrols.loginwindow.override' by client '/System/Library/CoreServices/loginwindow.app' [6185] for authorization created by '/System/Library/CoreServices/loginwindow.app' [6185]
Dec 13 09:24:14 Servus10 com.apple.SecurityServer[28]: Succeeded authorizing right 'com.apple.familycontrols.loginwindow.override' by client '/System/Library/PrivateFrameworks/FamilyControls.framework/Versions/A/Resources/parentalcontrolsd' [6216] for authorization created by '/System/Library/CoreServices/loginwindow.app' [6185]
Dec 13 09:24:15 Servus10 com.apple.SecurityServer[28]: Succeeded authorizing right 'system.login.done' by client '/System/Library/CoreServices/loginwindow.app' [6185] for authorization created by '/System/Library/CoreServices/loginwindow.app' [6185]
不幸的是,对于登录本身,似乎没有记录谁授权了它。但登录的日期和时间应该足够了。不过,在上面几行,您可能会找到登录用户的帐户名和 UID:
Dec 13 09:24:03 Servus10 authorizationhost[6209]: in pam_sm_setcred(): Establishing credentials
Dec 13 09:24:03 Servus10 authorizationhost[6209]: in pam_sm_setcred(): Got user: child
[...]
Dec 13 09:24:03 Servus10 authorizationhost[6209]: in ac_complete(): ac_complete returned: 0 for 503
不过,授权应用程序看起来更具信息量,授权用户在第一行引用中:
Dec 13 09:36:33 Servus10 com.apple.SecurityServer[28]: UID 503 authenticated as user daniel beck (UID 501) for right 'com.apple.familycontrols.override'
Dec 13 09:36:33 Servus10 com.apple.SecurityServer[28]: Succeeded authorizing right 'com.apple.familycontrols.override' by client '/System/Library/PrivateFrameworks/FamilyControls.framework/Versions/A/Resources/ParentalControls.app' [6587] for authorization created by '/System/Library/PrivateFrameworks/FamilyControls.framework/Versions/A/Resources/ParentalControls.app' [6587]
Dec 13 09:36:33 Servus10 com.apple.SecurityServer[28]: Succeeded authorizing right 'com.apple.familycontrols.override' by client '/System/Library/PrivateFrameworks/FamilyControls.framework/Versions/A/Resources/parentalcontrolsd' [6449] for authorization created by '/System/Library/PrivateFrameworks/FamilyControls.framework/Versions/A/Resources/ParentalControls.app' [6587]
结合程序访问日志中的过时信息,这应该能为您提供一些见解。即使没有永久授权,应用程序也会出现在那里。
网站只有获得永久授权后才能访问,因此系统偏好设置应该会为您提供一些相关信息。同样,结合首次访问的日期和时间,查找secure.log
如果受限用户知识渊博并且实际上具有管理访问权限,他们当然可以修改该日志文件的内容,但这可能不够隐蔽。
secure.log
已轮换,较旧的部分使用 bzip2 压缩存储在 中/var/log/secure.log.N.bz2
,从N
开始0
。
在终端中执行以下命令,将这些文件的副本复制到您的主目录并解压缩:
cp /var/log/secure.*.bz2 ~ ; cd ; bunzip2 *.bz2
secure.log.N
此后,您的主目录中就会有文件。