[ 
https://issues.apache.org/jira/browse/HADOOP-18618?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17684309#comment-17684309
 ] 

ASF GitHub Bot commented on HADOOP-18618:
-----------------------------------------

surendralilhore opened a new pull request, #5352:
URL: https://github.com/apache/hadoop/pull/5352

   Hadoop allows the configuration of a credential provider path through the 
property "hadoop.security.credential.provider.path", and the 
Configuration#getPassword() method retrieves the credentials from this provider.
   
   However, using common credential provider properties for components like 
Hive, HDFS, and MapReduce can cause issues when they want to configure separate 
JCEKS files for credentials. For example, the value in the core-site.xml 
property file can be overridden by the hive-site.xml property file. To resolve 
this, all components should share a common credential provider path and add all 
their credentials.
   
   Azure storage supports account-specific credentials, and thus the credential 
provider should permit the configuration of separate JCEKS files for each 
account, such as the property 
"fs.azure.account.credential.provider.path.<account>.blob.core.windows.net".
   
   To accommodate this, the Configuration#getPassword() method should accept a 
custom property for the credential provider path and retrieve its value. The 
current default property can be overridden to achieve this.
   
   public char[] getPassword(String name) throws IOException {
       ......
       ......
   }
   
   
   public char[] getPassword(String name, String providerKey) throws 
IOException {                  
       ......
       ......
    }




> Support custom property for credential provider path
> ----------------------------------------------------
>
>                 Key: HADOOP-18618
>                 URL: https://issues.apache.org/jira/browse/HADOOP-18618
>             Project: Hadoop Common
>          Issue Type: Improvement
>          Components: common
>    Affects Versions: 3.1.3
>            Reporter: Surendra Singh Lilhore
>            Assignee: Surendra Singh Lilhore
>            Priority: Minor
>
> Hadoop allows the configuration of a credential provider path through the 
> property "{*}hadoop.security.credential.provider.path{*}", and the 
> {{Configuration#getPassword()}} method retrieves the credentials from this 
> provider.
> However, using common credential provider properties for components like 
> Hive, HDFS, and MapReduce can cause issues when they want to configure 
> separate JCEKS files for credentials. For example, the value in the 
> core-site.xml property file can be overridden by the hive-site.xml property 
> file. To resolve this, all components should share a common credential 
> provider path and add all their credentials.
> Azure storage supports account-specific credentials, and thus the credential 
> provider should permit the configuration of separate JCEKS files for each 
> account, such as the property 
> "{*}fs.azure.account.credential.provider.path.<account>.blob.core.windows.net{*}".
> To accommodate this, the {{Configuration#getPassword()}} method should accept 
> a custom property for the credential provider path and retrieve its value. 
> The current default property can be overridden to achieve this.
> {code:java}
> public char[] getPassword(String name) throws IOException {
>     ......
>     ......
> }
> public char[] getPassword(String name, String providerKey) throws IOException 
> {                  
>     ......
>     ......
>  }{code}
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to