-
Notifications
You must be signed in to change notification settings - Fork 16
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove LDAP parts #366
base: master
Are you sure you want to change the base?
Remove LDAP parts #366
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks a lot for the PR, much appreciate.
I'd like to test the module manually before going for the approval. It might take me some time because I'm a bit busy today. Hope you don't mind.
Meanwhile, you can bump version and add an entry in the changelog ;)
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I managed to invest some time testing this PR today. We're on the way ;) but there are some thing to polish yet.
-
Users.pm has now a bunch of variables that are used but not previously declared. For example,
$substituted
,@user_internals
,@group_internals
or even$password
(this one in thesub _hashPassword
) We have to either, get ride of the useless code using them or re-declare those that still in use. -
The Makefile still referencing files that does not exist anymore
diff --git a/src/Makefile.am b/src/Makefile.am index 8622773e..3771f491 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -9,7 +9,6 @@ module_DATA = \ modules/UsersPlugins.pm \ modules/UsersSimple.pm \ modules/UsersCache.pm \ - modules/UsersPluginKerberos.pm \ modules/UsersPasswd.pm \ modules/Y2UsersLinux.rb @@ -25,9 +24,6 @@ client_DATA = \ clients/users_finish.rb \ clients/groups.rb \ clients/users_plugin_quota.rb \ - clients/users_plugin_ldap_all.rb \ - clients/users_plugin_ldap_shadowaccount.rb \ - clients/users_plugin_ldap_passwordpolicy.rb \ clients/users.rb \ clients/inst_root_first.rb \ clients/inst_user_first.rb \ @@ -42,7 +38,6 @@ yncludedir = @yncludedir@/users ynclude_DATA = \ include/users/widgets.rb \ include/users/wizards.rb \ - include/users/ldap_dialogs.rb \ include/users/dialogs.rb \ include/users/complex.rb \ include/users/routines.rb \
We have to remove these references from there.
-
The module fails when trying to write changes to the system
Internal error. Please report a bug report with logs. Run save_y2logs to get complete logs. Caller: /usr/share/YaST2/include/users/complex.rb:84:in `WriteDialog' Details: undefined method `LDAPModified' for Yast::Users:Module if Users.LDAPModified && (Ldap.anonymous || Ldap.bind_pass == nil) ^^^^^^^^^^^^^ Start the Ruby debugger now and debug the issue? (Experts only!)
Which is probably a matter of adapting the #WriteDialog method.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This step should be removed too: yast-users/src/modules/Users.pm Lines 4161 to 4164 in 074bb76
|
Yeah, there is a lot to remove still, but once I hit the case where I couldn't proceed, I stopped "removing" since I could no longer test and I didn't want to cause more damage. So any help would be great :) |
Ok, I'll jump in. Let's see how further I can go. |
2b168e4
to
3d6791d
Compare
Pull Request Test Coverage Report for Build 2925671381
💛 - Coveralls |
Otherwise, Perl will complain with 'Bareword "true" not allowed while "strict subs"'
I manage to get CI green, but still changes to do. Specially in the documentation, where none LDAP reference has been removed yet. |
There are quite some documents that mention the LDAP functionality. I guess they should also get updated to explicitly mention the functionality was there but was intentionally removed: |
5daa2f7
to
67acebc
Compare
Start to remove all ldap integration.
The LDAP integration as it exists in Yast is unmaintained and does a lot of things incorrectly. It relies on functionality to bypass password policy in LDAP servers, it requires client side pre-hashing/salting of passwords, it allows clear text storage of pws, it isn't schema aware, it relies on openldap specific functionality and more. Generally it's not in a good shape.
This starts the removal process. There are better tools to manage ldap accounts like ldapvi, dsidm, apache directory studio and more.
Currently this PR does have an error with rake run but the ruby trace has no correlation to the code so I don't know whats wrong :(