Skip to content

Conversation

@jasontedor
Copy link
Member

@jasontedor jasontedor commented Feb 10, 2021

We inadvertently removed permissions needed by the UnboundID LDAP SDK during a refactoring. This commit returns them to their rightful place.

These permissions are needed in core because we force the class initializers for two classes from the UnboundID LDAP SDK to load while loading the x-pack-core plugin. We have to do this there because x-pack-core depends on the UnboundID LDAP SDK as some realm classes live in x-pack-core.

Without these permissions, Elasticsearch will fail to start if an AD or LDAP realm is configured.

Relates #64743
Closes #68838

We inadvertently removed permissions needed by the UnboundID LDAP SDK
during a refactoring. This commit returns them to their rightful place.

These permissions are needed in core because we force the class
initializers for two classes from the UnboundID LDAP SDK to load while
loading the x-pack-core plugin. We have to do this there because
x-pack-core depends on the UnboundID LDAP SDK as some realm classes live
in x-pack-core.

Without these permissions, Elasticsearch will fail to start if an AD or
LDAP realm is configured.
@jasontedor jasontedor added >bug blocker :Security/Authentication Logging in, Usernames/passwords, Realms (Native/LDAP/AD/SAML/PKI/etc) v8.0.0 v7.12.0 v7.11.1 labels Feb 10, 2021
@elasticmachine elasticmachine added the Team:Security Meta label for security team label Feb 10, 2021
@elasticmachine
Copy link
Collaborator

Pinging @elastic/es-security (Team:Security)

Copy link
Member

@rjernst rjernst left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@jasontedor
Copy link
Member Author

@elasticmachine update branch

@tvernum

This comment has been minimized.

@jasontedor

This comment has been minimized.

Copy link
Contributor

@tvernum tvernum left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM
I was able to start up a node with both SAML and LDAP configured, and authenticate with an LDAP user.

@LeeDr
Copy link

LeeDr commented Feb 10, 2021

I don't see any mention of automated tests for this issue or LDAP auth. It is possible? Any plans for it?

@tvernum
Copy link
Contributor

tvernum commented Feb 10, 2021

I just repeated my test against master (without this fix) and it fails to start, as expected.

@tvernum
Copy link
Contributor

tvernum commented Feb 10, 2021

I don't see any mention of automated tests for this issue or LDAP auth.

They're coming, but they'll take time.
We need to get the fix in as quickly as possible so that we can kick off the builds while the testing is taking place.

@jasontedor jasontedor merged commit 3aff641 into elastic:master Feb 10, 2021
jasontedor added a commit that referenced this pull request Feb 10, 2021
We inadvertently removed permissions needed by the UnboundID LDAP SDK
during a refactoring. This commit returns them to their rightful place.

These permissions are needed in core because we force the class
initializers for two classes from the UnboundID LDAP SDK to load while
loading the x-pack-core plugin. We have to do this there because
x-pack-core depends on the UnboundID LDAP SDK as some realm classes live
in x-pack-core.

Without these permissions, Elasticsearch will fail to start if an AD or
LDAP realm is configured.
jasontedor added a commit that referenced this pull request Feb 10, 2021
We inadvertently removed permissions needed by the UnboundID LDAP SDK
during a refactoring. This commit returns them to their rightful place.

These permissions are needed in core because we force the class
initializers for two classes from the UnboundID LDAP SDK to load while
loading the x-pack-core plugin. We have to do this there because
x-pack-core depends on the UnboundID LDAP SDK as some realm classes live
in x-pack-core.

Without these permissions, Elasticsearch will fail to start if an AD or
LDAP realm is configured.
@jasontedor jasontedor deleted the ldapsdk-permissions branch February 10, 2021 23:29
@bevano8
Copy link

bevano8 commented Feb 11, 2021

  • follow

Hey, glad to see this has been raised. Is there any guide on how to fix, or will I need to wait for 7.11.1 release?

@jasontedor
Copy link
Member Author

Yes, there isn't a good workaround. We'll release 7.11.1 as fast as we can.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

blocker >bug :Security/Authentication Logging in, Usernames/passwords, Realms (Native/LDAP/AD/SAML/PKI/etc) Team:Security Meta label for security team v7.11.1 v7.12.0 v8.0.0-alpha1

Projects

None yet

Development

Successfully merging this pull request may close these issues.

NoClassDefFoundError: Could not initialize class com.unboundid.util.Debug

7 participants