我想使这对UI背后登录每次运行一个简单的程序。 在我的AppleScript我运行需要管理员身份验证的sudo命令。 有没有办法在每次运行时覆盖了认证的需要? 我不想让每个这个脚本登录之后运行时输入自己的用户名和密码。 任何帮助吗? (在非常简单的术语为我是一个新手。),不胜感谢!
Answer 1:
你可以把你的用户名和密码在AppleScript的命令,使其不要求提供这些凭证。 但是请注意,这些项目被存储为AppleScript的内部纯文本,从而有可能给别人看他们。 这不是真正的安全,但它是由你来决定它是否安全。 注意:您不需要在命令“命令”下去了。
do shell script "whatever" user name "username" password "password" with administrator privileges
在有些情况下,你可以在Keychain存储你的密码,并从AppleScript的检索,从而使得它的安全方法。 如果你想这样做,那么您所创建的密码项目如下。
打开钥匙串访问应用程序并选择在左栏的钥匙串。 然后单击文件>新建密码项目...,给它一个名字,把你的帐户短名称的账户,并输入密码。 高亮显示密码列表,并获得它的信息。 根据属性按钮进入其作为一种通用的关键。 这是选择,因为不会有太多的人,并且搜索速度要快得多。 你给它的任何名称必须放在下面的代码在“密码名称”。
现在,从AppleScript的,你可以用它像这样...
set myPass to getPW()
do shell script "whatever" user name "username" password myPass with administrator privileges
on getPW()
do shell script "security 2>&1 >/dev/null find-generic-password -gl \"Your Password Name\" | awk '{print $2}'"
return (text 2 thru -2 of result)
end getPW
祝好运!
Answer 2:
另一种解决方案是编辑
etc/sudoers
配置文件。
在该文件中的设置可以允许特定用户以超级用户执行(与...是...具体参数)的特定命令。
如果该命令本身是没有问题的,但问题是在代码暴露密码,那么这可能是解决方案。
该sudores文件应该被编辑在运行命令visudo命令,以超级用户。
你开始与sudoers文件篡改之前,我强烈建议你得到visudo命令,并在sudoers语法的基本知识,搞乱该文件可能会导致serius问题的系统。
正如你知道你在做什么只是添加几行的问题。
有关信息可能谷歌或从这里开始http://www.sudo.ws/sudoers.man.html
Answer 3:
如果你希望所有的管理员帐户才能够不输入密码才能使用sudo命令,然后执行以下操作。
改变从/私人的/ etc / sudoers文件如下所示的行
%admin ALL=(ALL) ALL
至
%admin ALL=(ALL) NOPASSWD: ALL
此编辑可以通过使用终端和文本编辑应用程序来完成。 打开终端应用程序,并输入以下命令:
cd ~/desktop
sudo cp -n /etc/sudoers /etc/sudoers.orignal
sudo cp /etc/sudoers sudoers.txt
sudo chmod ug+w sudoers.txt
open sudoers.txt
visudo -c -f sudoers.txt
sudo cp -X sudoers.txt /etc/sudoers
完成后,桌面上的文件sudoers.txt可放入垃圾桶。
要撤消更改,请使用以下命令:
sudo cp /etc/sudoers.original /etc/sudoers
这是使用OS X 10.10.1测试
如果你想要做的单个用户一样,那么看: http://hints.macworld.com/article.php?story=20021202054815892
下面是每个命令功能的简要说明:
cd ~/desktop
这可以确保您从桌面文件夹的工作。
sudo cp -n /etc/sudoers /etc/sudoers.original
这种备份您的sudoers文件。 备份可以用来撤消更改。 -n选项确保了现有sudoers.original文件不会被覆盖。
sudo cp /etc/sudoers sudoers.txt
复制sudoers文件到您的桌面。 .txt扩展添加使OS X会知道这是一个文本文件。
sudo chmod ug+w sudoers.txt
更改文件的权限,允许写访问。
open sudoers.txt
打开在TextEdit应用程序的文件。 您需要编辑该文件并保存更改。
visudo -c -f sudoers.txt
检查语法错误编辑过的文件。 输出应sudoers.txt: parsed OK
。
sudo cp -X sudoers.txt /etc/sudoers
将文件复制回/ etc目录中。