在OS X上使用日常非管理员帐户有什么意义?


19

这条建议很旧,但又重新流行起来。我最近在许多Mac网站或论坛上看到过很多。“您的'日常'用户帐户不应是管理员帐户。它应该是为此目的而创建的标准帐户,并且您应仅登录到该管理员帐户以执行实际的管理任务。»

这似乎是Windows世界中的普遍建议,但是对于最新的OS X系统,我只是不明白它带来了什么样的好处。让我们深入研究一下:

  • OS X管理员帐户不是 root帐户。任何想成为root用户的应用都会要求您输入密码,因此我在这里看不到其他安全层。尝试放入/var垃圾箱。
  • El Capitan的SIP阻止了Deep OS修改或向大多数关键文件中的代码注入,无论您是admin,root还是没人。更重要的是,在仍然允许使用密码的敏感地方,这样的修改至少需要一个root密码,即使是从admin帐户也是如此,这使我们回到了第一个论点。
  • 对于间谍软件,隐私问题和此类东西,使用标准帐户几乎没有提供任何额外的保护(如果有)。据我所知,即使从标准帐户使用应用程序,应用程序也可以完全访问用户的个人文件,并且具有完全网络访问权限(减去防火墙等)。如果不良应用程序希望将您的文档发送回去,那么可以通过标准帐户完美发送。
  • 基本防线(防火墙,运行受信任的应用程序等)是系统范围的。
  • 另一方面,切换到您的管理员帐户,然后来回切换到标准帐户是很痛苦的。实际上,这可能最终会导致用户延迟更新或管理员维护,只是为了节省时间并推迟处理麻烦。

那么,为什么不使用管理员帐户呢?我希望不会将其标记为重复项,与此问题相关的其他问题也不能解决这些问题。

编辑:问题适用于您拥有和控制的计算机。

Answers:


6

每台OS X计算机上只有一个 root帐户,默认情况下它被禁用。它没有密码,除非您专门使用Directory Utility并启用它,否则您不能以root用户身份登录。这很危险,因为以root用户身份登录时,系统会绕过所有授权-甚至不要求输入密码。在这方面,OS X计算机确实是无根的,这是A Good Thing™。

管理员帐户只是标准帐户,也恰好在管理员组中。已登录用户在OS X中执行的任何操作都将根据授权数据库进行检查(您可以在/System/Library/Security/authorization.plist中查看其规则,以查看是否不需要身份验证或足以进行身份​​验证为会话所有者(已登录的标准用户),或者您必须是admin组的成员。它提供了非常细粒度的控制,因此可能发生三种可能性,例如在“ 系统偏好设置”中单击锁定的挂锁时。单击后,它可能会简单地解锁而不进行身份验证,它可能会提供带有已输入帐户名的身份验证对话框(这意味着请确认您是您),或者可能会提供带有帐户名和密码字段为空的身份验证对话框(这意味着您不是管理员,请致电管理员以输入其凭据)。

一条经验法则是,任何可能影响计算机上其他用户(系统范围内的更改)的内容都将需要管理身份验证。但这要复杂得多。例如,标准用户可以从Mac App Store的/ Applications文件夹中安装应用程序(这是系统范围的更改),但是即使仅在自己的数据内,也无法绕过GateKeeper来运行未签名的应用程序。标准用户不能调用sudo,它的副作用很严重,即在10-15分钟不需要身份验证。设计巧妙的脚本会要求您对所批准的内容进行管理员身份验证,但此后它将执行所有您一无所知的古怪内容。

还可以通过家长控制或配置配置文件来管理标准用户,并且可以强制实施密码策略。管理员用户无法执行此操作。

系统完整性保护解决了以下事实:人们一直在通过安装程序包单击并提供密码,因此用户已成为最薄弱的环节。SIP只是试图保持系统正常运行,而没有其他事情(有时也会失败)。

您不会相信我看到有多少人在计算机上只有一个用户(这也是admin帐户),甚至没有帐户密码,也不会以登录窗口活动的形式感到烦恼。

我不同意您的观点,认为在必要时切换到管理员帐户很痛苦。如果您在终端机中,则只需执行任何操作(包括sudo或通过执行/System/Library/CoreServices/Finder.app/Contents/MacOS/Finder来以其他用户身份启动Finder)之前,先使用su myadminacct

在GUI中,Mac App Store更新(包括OS X更新)不需要管理员身份验证。那些最终包含在Downloads文件夹中的安装程序包,包括Adobe Flash更新,是的,在进行额外的工作并确保它们来自正确的位置并且没有麻烦的时候,打开这些文件时,应格外小心

这就是为什么我认为使用具有标准帐户的Mac比使用管理员更好和更安全的原因,因为它可以保护我免受自己的错误和疏忽。即使是大多数知识渊博的用户,也不会逐行检查每个下载的脚本,以查看是否发生了任何麻烦。

我希望这些控件将来能变得更加严格,例如,引入条件或时间表,以便在运行应用程序(或脚本或任何可执行文件)或访问网络时,或者如果我没有执行,甚至可能无法启动可执行文件在上个月左右的时间内未明确允许它(身份验证对话框)。


1
非常感谢,并且+50,这确实是我得到的第一个真实答案(也是迄今为止唯一的答案)

我想指出,作为非管理员,我可以xattr在Terminal中使用命令绕过Gatekeeper 。
SilverWolf-恢复莫妮卡

9

安全性最好以多层,多向量化策略实施

最小特权(POLP)的原理是,让您的电脑安全的机器只是一个齿轮。

您列出的所有内容都很好,但是这些都不能阻止某人利用诸如Dropped Drive Hack之类的漏洞来接管您的计算机。

  • 防火墙如何防止用户插入驱动器上嵌入了远程控制漏洞的USB?

  • SIP如何防止按键记录程序捕获您的按键?

  • 如果管理员可以轻松禁用 SIP ,那又有什么关系呢?

  • 您如何防止安装未经授权/非法许可的软件?受限制的用户帐户将确保不应该安装软件的用户不会安装软件。

您的最后一道防线是使用不是 Admin帐户的帐户,这样,当恶意软件尝试自行安装时,可以通过设置另一层安全性(用户身份验证)来减轻威胁。

我一直在说现在看来是这样的:

“安全性”不是您购买的产品或您打开的开关;充分利用所有工具以最大程度地降低风险,这是一种实践,是一种思维定势


2
谢谢; 实际上,这并不能真正回答问题,我应该更清楚地说明,我仅将防火墙和SIP用作示例。“安全不是一个开关,使用非管理员帐户增加了一层安全保护”尼斯的说法,但我的问题是如何。您能描述一种情况,即标准帐户实际上能够比要求root密码(可以被接受/拒绝)的管理员帐户更好地防御威胁吗?据我所知,键盘记录器甚至还不属于这一类。而且,如果您可以在不要求输入root密码的情况下禁用SIP,请告诉我如何做!

是什么让您认为所有威胁都限于恶意软件?为什么要允许用户安装可以访问他们无业务访问权限的数据/系统的软件?其次,您知道管理员可以使用“ sudo”,对吗?
艾伦

我不会否认标准账户在愚蠢风暴中的有用性。问题不在于:为什么存在标准帐户?只是:从安全的角度来看,当您使用自己的Mac时,有确切的事实理由要使用标准帐户执行日常任务,而不是登录到管理员帐户。

这种区别在您的问题中无处不在,是吗?现在,对于Windows,即使您是管理员,它也会根据您正在执行的操作自动减少POLP。您似乎也对“ Dropped Drive Hack”不屑一顾,在该对话框中,只要弹出对话框,人们都将“ willy nilly”键入密码。拥有标准帐户可以防止这种情况。
艾伦

3

通常,使用特权不超过要求的帐户被认为是最佳实践。通常,这意味着您应该使用具有尽可能低特权级别的帐户,并在需要更高特权的特定任务需要特权时提升特权。

但是,这很快变得很烦人。这样做的原因是,对您来说,这似乎是一项简单的任务(“我只想打开WiFi”)被视为对操作系统的特权操作(“您希望启用网络设备并允许计算机放入随机网络”)。

在便利性和安全性之间寻求平衡要比听起来要难得多,而且我个人的感觉是OS X的性能要比Windows之类的其他OSen更好。

如果您确实一直以管理员身份运行,则可能会意外地单击一封电子邮件,其中包含指向包含垃圾软件的网站的链接,并且该电子邮件会自动运行一个脚本,在您不知情的情况下进行一些重新配置。但是,如果您以非特权用户身份运行,则该脚本运行后,操作系统将立即弹出对话框,提示“此恶意脚本希望对您的计算机执行某些操作。请通过输入密码进行确认”。如果那不是您希望看到的东西,通常会引起警报或意外。

另外-更重要的是,您为其他人设置了一台计算机。您家中没有计算机知识的人。给他们一个非特权的登录名并保留自己的管理员密码是一个好主意,因此,下次他们单击任何旧的垃圾(就像他们不会那样)时,就不能用废话骚扰计算机。当您这样做时,他们有时会抱怨,但是您只需要提醒他们那一次,他们在IE 6上安装了35个工具栏,并且每次他们执行google搜索时,他们都会获得色情网站弹出式页面,然后他们会勉强同意它可能是个好主意。缺点是,当他们想更新Flash插件时,他们会更频繁地打电话给您,以使您解锁计算机。

如前所述:安全是一种态度,而不是您可以翻转的简单开关。


1
谢谢!这样的脚本有什么例子吗?我的意思是,如果以管理员身份启动,来自网站的废话脚本将在没有任何密码提示的情况下运行,但是如果您使用的是标准帐户,该脚本将被阻止?-我不想令人讨厌,我真的很想知道;-)我的印象是,正如您所说,OS X在密码要求方面提高了相当高的标准,即使对于管理员来说(因此)

我没有一个例子,但是很有可能会编写一个脚本,以便它弹出一个看上去无害的请求来运行(不需要提升权限),如果用户不是管理员,那么它将要求认证为管理员,如果当前用户已经是管理员,则可能不需要。
Scott Earle

2

让我看看您的原因如何起作用:

  1. 管理员帐户不是root用户。虽然为真,但他们可能能够打电话sudo,甚至可能已经准备好输入密码(或sudo配置为不要求输入密码)。

  2. SIP(系统完整性保护):这仅仅是一层,不足以应对所有攻击。可以禁用吗?更好!

  3. 间谍软件论点:也许吧。特权仍然不够分开。但是即使如此,它仍然是一个限制。

  4. 基本防御措施是系统范围的:#1说,在管理员帐户上运行的应用程序可以赢得root。

  5. 交换?众所周知,只要输入管理员帐户密码,您就可以通过标准帐户执行与管理员相关的任务。无需实际进行帐户切换。


欢迎问不同。一条建议...我们这里没有“攻击”任何东西。考虑重写您的答案,以免引起对抗。
艾伦

@Allan也许此编辑会使它“看起来”更好?
Paul Stelian

1
好多了。请参阅我的编辑,以获取有关如何使用(有限的)HTML标记进行格式化的示例以及一些措辞的示例。
艾伦

@Allan感谢您的修改。我实际上很精通代码标记,但是我实际上并没有想到要sudo在这样的代码中加上“ ”名称。我不确定您是如何进行实际枚举的(我也已经习惯了Quora,Quora现在会自动进行这种枚举)
Paul Stelian,2016年

1
那我不知道 只需在下一个问题/答案中试一下即可。
艾伦

2

如果您还有其他一些不懂计算机的家庭成员,或者您想限制他们的访问权限(例如,孩子),或者您是一个雇主,希望将访问权限限制给可能使用该机器的员工,那么绝对可以;仍然有理由在osx中​​拥有日常使用的非管理员帐户。

如果您拥有计算机并希望对其进行控制,请使用管理帐户。

如果您不希望其他用户能够“管理”任何内容,那么非管理员帐户将非常有帮助。同样,当有人问“嘿,我可以借用您的Mac来真正快速地执行某项操作吗?”时,您也不知道何时需要将计算机从袖带上借出,它使您可以放心地注销并登录。它们进入您创建并为其定制权限的某些“半访客”帐户。


0

可能还有其他原因,但是这是我的:无法对管理员帐户进行限制。设置适当的限制以防止自己访问不良或危险的站点非常有用。


为什么要下票?
KittyKatCoder '16
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.