仅使用Java在OS X的钥匙串中检索通用密码的标准方法是什么? Apple Developer Pages提供了一些良好的背景,但是不幸的是,实现和示例都是用C或本机代码编写的.
Java KeyStore OS X实现似乎仅对公用/专用密钥对和证书有效,但不适用于通用用户名/密码组合.
我看到一个始于Here的项目:但是它相对较旧并且没有得到积极维护.
是否有更先进的解决方案来解决Java中Mac OS X中的凭据安全问题?
编辑:OAuth不是问题类别和我在…
解决方法:
除了上述f-stephen-q的答案之外,该库似乎仍然可以正常工作.我用的是叉子
$git clone https://github.com/physion/osx-keychain-java
$mvn install
$cp dist/osxkeychain.jar ~/myproject/external
添加依赖
<dependency>
<groupId>us.physion</groupId>
<artifactId>osx-keychain</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/external/osxkeychain.jar</systemPath>
</dependency>
运行它
osx-keychain-java$jshell -cp ./dist/osxkeychain.jar
jshell> import com.mcdermottroe.apple.*;
jshell> OSXKeychain keychain = OSXKeychain.getInstance();
keychain ==> com.mcdermottroe.apple.OSXKeychain@2286778
jshell> keychain.addGenericPassword("aardvark", "a", "b");
jshell> keychain.findGenericPassword("aardvark", "a");
$4 ==> "b"