【问题标题】:Is it possible to delete an application password from Keychain using AppleScript or a Shell Script?是否可以使用 AppleScript 或 Shell 脚本从 Keychain 中删除应用程序密码?
【发布时间】:2015-01-28 03:24:01
【问题描述】:

我在 Automator 中编写了一个 AppleScript/Shell 脚本应用程序来终止所有相关进程,重置环境测试变量,并删除所有相关 plist、设备文件和日志。但是,我仍然需要手动删除应用程序 oAuth 令牌,然后才能再次开始测试。我需要一种解决方案来自动查找与属性匹配的所有密码并将其删除。

从另一个问题我发现了以下sn-p:

property theKey : "abcd"

tell application "Keychain Scripting"
    set keyList to every generic key of current keychain
    repeat with x from 1 to (length of keyList)
        if the name of item x of keyList is theKey then
            delete generic key x of current keychain
            exit repeat
        end if
    end repeat
end tell

但是,当我尝试验证它时,它会挂在“通用”上。

想法?

【问题讨论】:

    标签: applescript keychain


    【解决方案1】:

    我最终找到了一个完美的解决方案。

    security delete-generic-password -l "com.oauth_token_example.auth"
        ~/Library/Keychains/login.keychain || set t 0
    

    这有效地删除了钥匙串中与字符串匹配的任何键。如果没有找到与字符串匹配的键,它会返回一个错误,所以我在一个什么都不做的 else 语句(set t 0)中使用双管道。我确信有一个更简单的方法,但如果它有效,谁在乎呢?

    【讨论】:

      猜你喜欢
      • 2019-11-22
      • 2021-07-07
      • 1970-01-01
      • 2023-03-28
      • 2011-05-14
      • 1970-01-01
      • 1970-01-01
      • 2012-07-02
      相关资源
      最近更新 更多