- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在尝试通过 sqlContext.read.format("json")
方法连接到 Oracle。一切顺利,但在创建 JDBC 字符串时,我必须在字符串中指定数据库的用户名和密码:
val jdbcString = "jdbc:oracle:thin:USERNAME/PASSWORD@//HOSTNAME:PORT/SID"
但是,我在 HDFS 上确实有一个包含密码的 jceks
文件。我想知道是否有任何方法可以利用该文件连接到 JDBC 而不是纯文本密码?就像在 Sqoop 中一样,我们可以这样做:
sqoop import -Dhadoop.security.credential.provider.path=jceks://hdfs/data/credentials/oracle.password.jceks
谢谢。
最佳答案
这是使用 CredentialProviderFactory
实现的。
import org.apache.hadoop.security.alias.CredentialProviderFactory
val conf = new org.apache.hadoop.conf.Configuration()
val alias = "password.alias"
val jceksPath = "jceks://hdfs/user/data/alias/MySQL.password.jceks"
conf.set(CredentialProviderFactory.CREDENTIAL_PROVIDER_PATH, jceksPath)
//getPassword Returns Array[Char]
val password = conf.getPassword(alias).mkString
关于hadoop - 使用 Spark JDBC 指定 jceks 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45438393/
我有两个文件kestore1.jceks和keystore2.jceks。我想将它们合并并加载到 KeyStore 对象中。 KeyStore KEY_STORE = KeyStore.getInst
我想解密 Java JCEKS keystore 中的私钥,但我不想使用 Java。 我可以找到 PBEWithMD5AndTripleDES 的描述,但找不到实际的实现。 此评论据称解释了推导过程:
我有一个使用 keytool 生成的 AES key : keytool -genseckey -alias authenticationkey -keyalg AES -keysize 256 -k
我有一个使用 SUN PROVIDER 创建的 keystore JCEKS。 我必须在没有 SUN PROVIDER 的 IBM JDK 上使用相同的存储。如何使用 keytool 转换 keyst
我正在尝试使用 pyjks模块从 keystore 中获取 key ,但是加载 keystore 失败并出现以下错误: ValueError: Hash mismatch; incorrect pas
我有一个 JCEKS keystore ,我正在将其作为资源从 war 文件加载。我正在使用 keystore 来存储用于 AES 加密的 key 。当我尝试在直接打开文件的固定项目中读取 keyst
我用 KeyStore store = KeyStore.getInstance("JCEKS"); 但是是 make KeyStoreException java.security.KeyStore
我正在尝试为我的客户端/服务器通信提供使用 WebSockets 的选项。我有一些使用 Vert.x 的经验,并选择将其用作此框架(注意:我不拘泥于此!)。 双向通信正常,这不是问题。 我正在尝试使用
我正在尝试通过 sqlContext.read.format("json") 方法连接到 Oracle。一切顺利,但在创建 JDBC 字符串时,我必须在字符串中指定数据库的用户名和密码: val jd
我觉得我完全没有理解 Wildfly 中新的 JCEKS keystore 格式的要点。也许你可以纠正我。 我们配置 Wildfly 的方式(互联网上的大部分内容都指示我们这样做,for exampl
我正在尝试在java中进行AES加密/解密 我使用 KeyGenerator 生成了 key 。我使用 java keystore 存储 key 。 Key myKey = KeyGe
在JCEKS key 中存储了使用的算法和key的大小。 我发现它使用 Triple DES 但是 key 大小是多少……? 谢谢 最佳答案 目前,JCEKS key 存储中的每个 PrivateKe
我有一个 JCEKS keystore 来保存我的 AES key 。这已经在开发环境和 GAE 运行时中工作了一段时间。 昨晚我部署了一个更新(与加密案例无关),现在加载 keystore 抛出 I
我正在尝试使用对称加密来保护使用 java-8 的 jetty-9 上的通信。我为此目的使用的密码套件是“TLS_PSK_WITH_AES_128_GCM_SHA256”。此密码套件的实现由第三方提供
我正在尝试将 Java JCEKS keystore 转换为包含两个对称 key (一个 AES 和一个 3DES)的 PKCS12。 AES key 可以正常导入到 PKCS12 文件中,但 3DE
我有一些代码可以加密一些用户数据。目前,我将 key 存储在配置文件中,该配置文件在运行时加载。这很糟糕,原因有很多,也就是说,如果有人访问配置文件,他们就可以访问 key 。所以我开始研究 Java
当我调用 java.security.KeyStore 下的函数时: public final Key getKey(String alias, char[] password) 我收到以下错误: j
当我尝试在 Windows 上使用 Oracle Java 8 JRE 172 打开 JCEKS 类型 keystore 时出现以下异常。这适用于早期版本的 JRE: INFO: ObjectInpu
我是一名优秀的程序员,十分优秀!