[ 
https://issues.apache.org/jira/browse/QPID-6363?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Keith Wall updated QPID-6363:
-----------------------------
    Status: Reviewable  (was: In Progress)

> Fail early if additional SASL providers cannot be registered with the Java 
> Security API
> ---------------------------------------------------------------------------------------
>
>                 Key: QPID-6363
>                 URL: https://issues.apache.org/jira/browse/QPID-6363
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Client
>    Affects Versions: 0.10, 0.20, 0.30
>            Reporter: Keith Wall
>            Assignee: Keith Wall
>            Priority: Minor
>             Fix For: 0.31
>
>
> Registering SASL providers with the Java Security API requires specific 
> SecurityManager permissions.   This registration will fail if the JVM's 
> security.policy denies it.  This can happens in execution environments such 
> as web containers.
> Currently the SASL registration takes place as a side effect of protocol 
> connection negotiation.  If it fails here, it is the IO threads that see the 
> exception, rather than the caller's thread.
> The SASL registration should be moved  so that we fail fast, on a thread 
> belonging to the application.
> {noformat}
> Caused by: java.security.AccessControlException: access denied 
> (java.security.SecurityPermission putProviderProperty.AMQSASLProvider-Client)
>        at 
> java.security.AccessControlContext.checkPermission(AccessControlContext.java:323)
>        at 
> java.security.AccessController.checkPermission(AccessController.java:546)
>        at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
>        at 
> java.lang.SecurityManager.checkSecurityAccess(SecurityManager.java:1698)
>        at java.security.Provider.check(Provider.java:386)
>        at java.security.Provider.put(Provider.java:309)
>        at 
> org.apache.qpid.client.security.JCAProvider.register(JCAProvider.java:68)
>        at 
> org.apache.qpid.client.security.JCAProvider.<init>(JCAProvider.java:55)
>        at 
> org.apache.qpid.client.security.DynamicSaslRegistrar.registerSaslProviders(DynamicSaslRegistrar.java:89)
>        at 
> org.apache.qpid.client.security.CallbackHandlerRegistry.<init>(CallbackHandlerRegistry.java:116)
>        at 
> org.apache.qpid.client.security.CallbackHandlerRegistry.<clinit>(CallbackHandlerRegistry.java:69)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

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

Reply via email to