GitHub访问令牌存储在哪里,还有其他访问设置存储库的方法吗?

时间:2019-03-23 14:13:35

标签: intellij-idea

要使用设置存储库时,必须提供GitHub访问令牌。它存储在哪个文件中?有没有提供不持久保存敏感数据的访问令牌的替代方法,例如为每个IntelliJ会话输入用户名和密码(即从IntelliJ打开到关闭)?

(已经在support site处被问到,但没有答案。)

1 个答案:

答案 0 :(得分:2)

GitHub帐户存储在

%IDEA_HOME%\config\options\github.xml

但是,诸如访问令牌或登录数据之类的基本信息存储在特定文件下。
您可以通过以下方式自定义IDEA存储它们的方式

enter image description here

例如,使用预定义的名称,您会找到

%IDEA_HOME%\config\c.kdbx
%IDEA_HOME%\config\c.pwd

c.kdbx是KeePass文件。
c.pwd通常是Crypt32加密的文件,仅在Windows上。

  

Crypt32.dll是实现许多证书和   CryptoAPI中的加密消息传递功能

decrypted = createBuiltInOrCrypt32EncryptionSupport(SystemInfo.isWindows)...
...

internal fun createBuiltInOrCrypt32EncryptionSupport(isCrypt32: Boolean): EncryptionSupport {
  return when {
    isCrypt32 -> {
      if (!SystemInfo.isWindows) {
        throw IllegalArgumentException("Crypt32 encryption is supported only on Windows")
      }

      WindowsCrypt32EncryptionSupport(builtInEncryptionKey)
      ...

您可以在masterKey.kt处查看平台如何管理c.pwd文件
您可以在KeePassCredentialStore.kt

处检查平台如何管理c.kdbx文件

最终,如果您选择“请勿保存,请在重启后忘记密码” ,则所有内容仅在当前会话中处于内存中。


我不为JetBrains工作,因此,如果他们想编辑我的答案,请放心。