Description

This tool is used to create users in SUSE Manager Server based on LDAP/AD groups. For each LDAP/AD group a role within SUSE Manager Server is defined. Also, the tool will check if existing users still have the role they should have, and, if not, it will be corrected. The same for if a user is disabled, it will be enabled again. If a users is not present in the LDAP/AD groups anymore, it will be disabled or deleted, depending on the configuration.

The code is written for Python 3.6 (the default with SLES15.x), but will also work with newer versions. And works against SUSE Manger 4.3 and 5.x

Goals

Create a python and/or golang utility that will manage users in SUSE Manager based on LDAP/AD group-membership. In a configuration file is defined which roles the members of a group will get.

Table of contents

Installation

To install this project, perform the following steps:

  • Be sure that python 3.6 is installed and also the module python3-PyYAML. Also the ldap3 module is needed:

bash zypper in python3 python3-PyYAML pip install yaml

  • On the server or PC, where it should run, create a directory. On linux, e.g. /opt/sm-ldap-users

  • Copy all the file to this directory.

  • Edit the configsm.yaml. All parameters should be entered. Tip: for the ldap information, the best would be to use the same as for SSSD.

  • Be sure that the file sm-ldap-users.py is executable. It would be good to change the owner to root:root and only root can read and execute:

bash chmod 600 * chmod 700 sm-ldap-users.py chown root:root *

Usage

This is very simple. Once the configsm.yaml contains the correct information, executing the following will do the magic:

bash /sm-ldap-users.py

repository link

https://github.com/mbrookhuis/sm-ldap-users

Looking for hackers with the skills:

uyuni susemanager

This project is part of:

Hack Week 24

Activity

  • 10 months ago: juliogonzalezgil liked this project.
  • 10 months ago: mbrookhuis added keyword "uyuni" to this project.
  • 10 months ago: mbrookhuis added keyword "susemanager" to this project.
  • 11 months ago: drrobk liked this project.
  • 11 months ago: imabreuferreira joined this project.
  • 11 months ago: wombelix liked this project.
  • 11 months ago: kevinm left this project.
  • 11 months ago: kevinm joined this project.
  • 11 months ago: emendonca joined this project.
  • 12 months ago: mbrookhuis started this project.
  • 12 months ago: mbrookhuis liked this project.
  • 12 months ago: mbrookhuis originated this project.

  • Comments

    • emendonca
      11 months ago by emendonca | Reply

      I can help with the Python part, SUSE Manager API and LDAP queries.

    • mbrookhuis
      10 months ago by mbrookhuis | Reply

      Hi @emendonca, I totally missed you comment. Sorry and my apologies.

      I have uploaded the project, please have a look and I am looking forward for your comments.

    • ericmenk33
      2 days ago by ericmenk33 | Reply

      Creating SUSE Manager users from LDAP/AD groups keeps access and roles automatically synchronized for ops teams, making user lifecycle management reliable and repeatable. At the same time, design teams can quickly produce polished visuals for docs and dashboards using photoleap mod apk for pc Bringing automation and fast creative tools together speeds onboarding, reporting, and internal communications for the whole project.

    Similar Projects

    Move Uyuni Test Framework from Selenium to Playwright + AI by oscar-barrios

    Description

    This project aims to migrate the existing Uyuni Test Framework from Selenium to Playwright. The move will improve the stability, speed, and maintainability of our end-to-end tests by leveraging Playwright's modern features. We'll be rewriting the current Selenium code in Ruby to Playwright code in TypeScript, which includes updating the test framework runner, step definitions, and configurations. This is also necessary because we're moving from Cucumber Ruby to CucumberJS.

    If you're still curious about the AI in the title, it was just a way to grab your attention. Thanks for your understanding.


    Goals

    • Migrate Core tests including Onboarding of clients
    • Improve test reliabillity: Measure and confirm a significant reduction of flakynes.
    • Implement a robust framework: Establish a well-structured and reusable Playwright test framework using the CucumberJS

    Resources