V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Sequencer
V2EX  ›  Apple

關於如何讓 alfred 運行 sudo 的 workflow

  •  
  •   Sequencer · 2015-12-31 22:58:54 +08:00 · 2931 次点击
    这是一个创建于 3250 天前的主题,其中的信息可能已经有所发展或是发生改变。

    放在 Apple 節點熱鬧一些,如有違規請移動節點

    現在貌似得把密碼明文保存到一個文件裡面,貌似這樣不是很好。
    我想到的就是
    1.編譯進文件直接提權
    2.把密碼加密後儲存

    第一種方案有什麼釋憲方法了?

    第二種方案有點笨拙

    或者還有什麼其他的方法麼?
    比如直接對一個文件提權之類的方案有麼?

    第 1 条附言  ·  2016-01-01 19:04:56 +08:00
    現在對程序 chmod u+s 之後 還是無法訪問動態庫 蛋疼
    11 条回复    2016-01-01 17:45:58 +08:00
    fatestigma
        1
    fatestigma  
       2015-12-31 23:40:08 +08:00
    如果平时愿意输入密码可以用 AppleScript 的 `do shell script with administrator privileges`,每次运行会提示授权。
    另外一种我没具体试过,但是可以自行尝试下把密码保存到 Keychain 中,然后用 `security` 读,`security` 读的时候,第一次会提示是否许可,可以选择 Always Allow 或 Allow , Keychain 的安全应该还是可以的吧。
    另外在 Lucifr 博客 [写个 Alfred 插件之“更新 hosts ”]( http://lucifr.com/2012/08/22/write-an-alfred-extension-for-hosts-update/) 中提到另一个方法:
    > 一番搜索之后, Lucifr 找到了 Dirtdon 制作的 Authenticate for Alfred ,这个小程序可以将用户名和密码储存在 OS X 的钥匙串中,使用简单,把 Authenticate.app 放到插件的目录下就可以使用。调用起来也很简单
    Sequencer
        2
    Sequencer  
    OP
       2015-12-31 23:59:41 +08:00
    @fatestigma 嗯嗯 好 謝謝了!
    那直接在程序裡面 main 函數入口直接編譯進密碼來提權,有這樣的操作方法麼?
    fatestigma
        3
    fatestigma  
       2016-01-01 00:03:51 +08:00
    @Sequencer 这个还真不清楚,平时被脚本语言惯坏了。
    Sequencer
        4
    Sequencer  
    OP
       2016-01-01 00:05:54 +08:00
    @fatestigma +1 剛剛找了一下哪個程序 404 了 在 git 上也沒有 在找源碼 估計會找的有點困難
    Sequencer
        5
    Sequencer  
    OP
       2016-01-01 00:08:13 +08:00
    @fatestigma https://github.com/JasonGao180/alfred-authenticate.app 這個是個編譯好的文件 表示不敢使用😂
    fatestigma
        6
    fatestigma  
       2016-01-01 00:28:57 +08:00
    @Sequencer 这个确实,放 GitHub 上 .app 文件不放源码的确实感觉不安全。那试试调用外部程序 security 等其他方案吧。
    Sequencer
        7
    Sequencer  
    OP
       2016-01-01 00:39:36 +08:00
    @fatestigma 嗯 好 謝謝啦!
    gleox
        8
    gleox  
       2016-01-01 01:56:00 +08:00
    做个守护程序,提供 api 调用。
    Sequencer
        9
    Sequencer  
    OP
       2016-01-01 03:20:46 +08:00 via iPhone
    @gleox 守護程序太麻煩了 還不如寫個鑰匙串讀取的 swift 程序
    zander
        10
    zander  
       2016-01-01 05:35:02 +08:00
    自己签发一个证书。然后用证书给二进制程序签名。
    ichou
        11
    ichou  
       2016-01-01 17:45:58 +08:00
    我会说我直接把 密码写在了 AppleScript 里面么
    虽然 low 但是简单粗暴
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3025 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 13:48 · PVG 21:48 · LAX 05:48 · JFK 08:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.