Cloudron makes it easy to run web apps like WordPress, Nextcloud, GitLab on your server. Find out more or install now.


Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
  • Search
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

Cloudron Forum

Apps | Demo | Docs | Install
  1. Cloudron Forum
  2. App Wishlist
  3. Omeka - platform for digital cultural heritage web publishing

Omeka - platform for digital cultural heritage web publishing

Scheduled Pinned Locked Moved Solved App Wishlist
46 Posts 6 Posters 6.5k Views 8 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • girishG girish

    @imc67 Yes, getting there... @nebulon already updated the app to use the latest base image and 7.4. Now we need to get the LDAP thing working.

    jeauJ Offline
    jeauJ Offline
    jeau
    App Dev
    wrote on last edited by
    #24

    @girish, I'm trying to go ahead with the configuration of Ldap module.

    Settings are located at the bottom of /app/data/config/local.config.php

    The following configuration allows a first authentication from the username however the account created does not retrieve the email address but an address like this <username>@<ip>.

       'ldap' => [
            'adapter_options' => [
                'server1' => [
                    'host' => getenv('CLOUDRON_LDAP_SERVER'),
                    'port' => getenv('CLOUDRON_LDAP_PORT'),
                    'username' => getenv('CLOUDRON_LDAP_BIND_DN'),
                    'password' => getenv('CLOUDRON_LDAP_BIND_PASSWORD'),
                    'bindRequiresDn' => true,
                    'baseDn' => getenv('CLOUDRON_LDAP_USERS_BASE_DN'),
                    'accountFilterFormat' => '(&(objectClass=user)(username=%s))',
                    'accountCanonicalForm' => 4,
                    'accountDomainName' => getenv('CLOUDRON_LDAP_HOST'),
                ],
            ],
        ],
    

    With Omeka, it is usual to connect with the mail but the filter (&(objectClass=user)(mail=%s)) does not work.

    The module documentation is here https://github.com/biblibre/omeka-s-module-Ldap

    girishG 3 Replies Last reply
    2
    • jeauJ jeau

      @girish, I'm trying to go ahead with the configuration of Ldap module.

      Settings are located at the bottom of /app/data/config/local.config.php

      The following configuration allows a first authentication from the username however the account created does not retrieve the email address but an address like this <username>@<ip>.

         'ldap' => [
              'adapter_options' => [
                  'server1' => [
                      'host' => getenv('CLOUDRON_LDAP_SERVER'),
                      'port' => getenv('CLOUDRON_LDAP_PORT'),
                      'username' => getenv('CLOUDRON_LDAP_BIND_DN'),
                      'password' => getenv('CLOUDRON_LDAP_BIND_PASSWORD'),
                      'bindRequiresDn' => true,
                      'baseDn' => getenv('CLOUDRON_LDAP_USERS_BASE_DN'),
                      'accountFilterFormat' => '(&(objectClass=user)(username=%s))',
                      'accountCanonicalForm' => 4,
                      'accountDomainName' => getenv('CLOUDRON_LDAP_HOST'),
                  ],
              ],
          ],
      

      With Omeka, it is usual to connect with the mail but the filter (&(objectClass=user)(mail=%s)) does not work.

      The module documentation is here https://github.com/biblibre/omeka-s-module-Ldap

      girishG Offline
      girishG Offline
      girish
      Staff
      wrote on last edited by
      #25

      @jeau the settings look correct to me. Is there anything in the logs? Otherwise, if you can push your changes, I can quickly test here.

      1 Reply Last reply
      1
      • girishG Offline
        girishG Offline
        girish
        Staff
        wrote on last edited by
        #26

        OK, just testing out if it's something obvious. But the LDAP server does not get any requests at all from omeka

        1 Reply Last reply
        1
        • girishG Offline
          girishG Offline
          girish
          Staff
          wrote on last edited by
          #27

          So, after some debugging I found that the LDAP code hits a LDAP_X_DOMAIN_MISMATCH exception. This is because of the accountDomainName looks like. It expects the email ids to be in the same domain as the one we set there. Removing it, still fails though.

          1 Reply Last reply
          1
          • jeauJ jeau

            @girish, I'm trying to go ahead with the configuration of Ldap module.

            Settings are located at the bottom of /app/data/config/local.config.php

            The following configuration allows a first authentication from the username however the account created does not retrieve the email address but an address like this <username>@<ip>.

               'ldap' => [
                    'adapter_options' => [
                        'server1' => [
                            'host' => getenv('CLOUDRON_LDAP_SERVER'),
                            'port' => getenv('CLOUDRON_LDAP_PORT'),
                            'username' => getenv('CLOUDRON_LDAP_BIND_DN'),
                            'password' => getenv('CLOUDRON_LDAP_BIND_PASSWORD'),
                            'bindRequiresDn' => true,
                            'baseDn' => getenv('CLOUDRON_LDAP_USERS_BASE_DN'),
                            'accountFilterFormat' => '(&(objectClass=user)(username=%s))',
                            'accountCanonicalForm' => 4,
                            'accountDomainName' => getenv('CLOUDRON_LDAP_HOST'),
                        ],
                    ],
                ],
            

            With Omeka, it is usual to connect with the mail but the filter (&(objectClass=user)(mail=%s)) does not work.

            The module documentation is here https://github.com/biblibre/omeka-s-module-Ldap

            girishG Offline
            girishG Offline
            girish
            Staff
            wrote on last edited by
            #28

            this works (login with username and not email):

                'ldap' => [
                    'adapter_options' => [
                        'server1' => [
                            'host' => getenv('CLOUDRON_LDAP_SERVER'),
                            'port' => getenv('CLOUDRON_LDAP_PORT'),
                            'username' => getenv('CLOUDRON_LDAP_BIND_DN'),
                            'password' => getenv('CLOUDRON_LDAP_BIND_PASSWORD'),
                            'bindRequiresDn' => true,
                            'baseDn' => getenv('CLOUDRON_LDAP_USERS_BASE_DN'),
                            'accountFilterFormat' => '(&(objectclass=user)(username=%s))',
                            'accountCanonicalForm' => 1,
                            // 'accountDomainName' => getenv('CLOUDRON_LDAP_HOST'),
                        ],
                    ],
                ],
            
            1 Reply Last reply
            1
            • jeauJ jeau

              @girish, I'm trying to go ahead with the configuration of Ldap module.

              Settings are located at the bottom of /app/data/config/local.config.php

              The following configuration allows a first authentication from the username however the account created does not retrieve the email address but an address like this <username>@<ip>.

                 'ldap' => [
                      'adapter_options' => [
                          'server1' => [
                              'host' => getenv('CLOUDRON_LDAP_SERVER'),
                              'port' => getenv('CLOUDRON_LDAP_PORT'),
                              'username' => getenv('CLOUDRON_LDAP_BIND_DN'),
                              'password' => getenv('CLOUDRON_LDAP_BIND_PASSWORD'),
                              'bindRequiresDn' => true,
                              'baseDn' => getenv('CLOUDRON_LDAP_USERS_BASE_DN'),
                              'accountFilterFormat' => '(&(objectClass=user)(username=%s))',
                              'accountCanonicalForm' => 4,
                              'accountDomainName' => getenv('CLOUDRON_LDAP_HOST'),
                          ],
                      ],
                  ],
              

              With Omeka, it is usual to connect with the mail but the filter (&(objectClass=user)(mail=%s)) does not work.

              The module documentation is here https://github.com/biblibre/omeka-s-module-Ldap

              girishG Offline
              girishG Offline
              girish
              Staff
              wrote on last edited by
              #29

              @jeau it seems the email and displayname fields are simply filled with the DN like cn=uid-fc561e94-2711-4411-83cd-4d9a7ffe57d4,ou=users,dc=cloudron . I guess we need to ask the module-ldap author on how we can get this properly read in from LDAP.

              jeauJ 1 Reply Last reply
              2
              • girishG girish

                @jeau it seems the email and displayname fields are simply filled with the DN like cn=uid-fc561e94-2711-4411-83cd-4d9a7ffe57d4,ou=users,dc=cloudron . I guess we need to ask the module-ldap author on how we can get this properly read in from LDAP.

                jeauJ Offline
                jeauJ Offline
                jeau
                App Dev
                wrote on last edited by
                #30

                @girish yes, I asked Julian from Biblibre who who develops this module. He talk me that the current released (0.3.0) of Ldap module I used does not allow to configure the LDAP attributes to retrieve the name and email. I tried from source, it's works partially, I retreive the user mail address but I can sign in only with username, not mail.

                1 Reply Last reply
                1
                • imc67I Offline
                  imc67I Offline
                  imc67
                  translator
                  wrote on last edited by
                  #31

                  @jeau said in Omeka - platform for digital cultural heritage web publishing:

                  I can sign in only with username

                  That is no problem at all as app like Wordpress and Nextcloud also uses usernames as login.

                  jeauJ 1 Reply Last reply
                  1
                  • imc67I imc67

                    @jeau said in Omeka - platform for digital cultural heritage web publishing:

                    I can sign in only with username

                    That is no problem at all as app like Wordpress and Nextcloud also uses usernames as login.

                    jeauJ Offline
                    jeauJ Offline
                    jeau
                    App Dev
                    wrote on last edited by
                    #32

                    @imc67 you're right, it's works with the Ldap module, but usually Omeka S users use their email address and in their profile there's no username.

                    girishG 1 Reply Last reply
                    0
                    • jeauJ jeau

                      @imc67 you're right, it's works with the Ldap module, but usually Omeka S users use their email address and in their profile there's no username.

                      girishG Offline
                      girishG Offline
                      girish
                      Staff
                      wrote on last edited by
                      #33

                      @jeau atleast the login form of omeka s says "email or username".

                      imc67I 1 Reply Last reply
                      0
                      • girishG girish

                        @jeau atleast the login form of omeka s says "email or username".

                        imc67I Offline
                        imc67I Offline
                        imc67
                        translator
                        wrote on last edited by
                        #34

                        @girish said in Omeka - platform for digital cultural heritage web publishing:

                        @jeau atleast the login form of omeka s says "email or username".

                        Indeed and for me it’s ok. And for the time being as “Unstable” in the AppStore it might be possible to use username as Account name?

                        jeauJ 1 Reply Last reply
                        0
                        • imc67I imc67

                          @girish said in Omeka - platform for digital cultural heritage web publishing:

                          @jeau atleast the login form of omeka s says "email or username".

                          Indeed and for me it’s ok. And for the time being as “Unstable” in the AppStore it might be possible to use username as Account name?

                          jeauJ Offline
                          jeauJ Offline
                          jeau
                          App Dev
                          wrote on last edited by
                          #35

                          @girish I never understood why the form asks for name or email. I didn't submit any changes either.

                          I just found the module UserNames who solve this issue. I can install it by default.

                          @imc67 I hope it will be possible soon.

                          jeauJ 1 Reply Last reply
                          1
                          • jeauJ jeau

                            @girish I never understood why the form asks for name or email. I didn't submit any changes either.

                            I just found the module UserNames who solve this issue. I can install it by default.

                            @imc67 I hope it will be possible soon.

                            jeauJ Offline
                            jeauJ Offline
                            jeau
                            App Dev
                            wrote on last edited by
                            #36

                            Oups, UserNames module broke ldap access 😞 I will report this issue.

                            jeauJ 1 Reply Last reply
                            1
                            • jeauJ jeau

                              Oups, UserNames module broke ldap access 😞 I will report this issue.

                              jeauJ Offline
                              jeauJ Offline
                              jeau
                              App Dev
                              wrote on last edited by
                              #37

                              @girish I installed some components required for official modules and made some settings and tests. I think we can provide this application as "unstable" in the store. I hope I haven't forgotten anything important.

                              nebulonN 1 Reply Last reply
                              3
                              • jeauJ jeau

                                @girish I installed some components required for official modules and made some settings and tests. I think we can provide this application as "unstable" in the store. I hope I haven't forgotten anything important.

                                nebulonN Offline
                                nebulonN Offline
                                nebulon
                                Staff
                                wrote on last edited by
                                #38

                                @jeau this is great! I've just ran the tests and we are looking good.
                                I will update the manifest to add things like mediaLinks and such for the appstore and then push it out as unstable later today.

                                Thanks a lot for the work 🙂

                                jeauJ 1 Reply Last reply
                                4
                                • nebulonN nebulon

                                  @jeau this is great! I've just ran the tests and we are looking good.
                                  I will update the manifest to add things like mediaLinks and such for the appstore and then push it out as unstable later today.

                                  Thanks a lot for the work 🙂

                                  jeauJ Offline
                                  jeauJ Offline
                                  jeau
                                  App Dev
                                  wrote on last edited by
                                  #39

                                  @nebulon thank's

                                  About tests. Is there a way to test the ldap connection? For my tests, I could connect with my initial administrator, activate and configure the Ldap module but then how to verify? I can't seriously give a Cloudron login and password inside my test code and repo.

                                  nebulonN 1 Reply Last reply
                                  1
                                  • jeauJ jeau

                                    @nebulon thank's

                                    About tests. Is there a way to test the ldap connection? For my tests, I could connect with my initial administrator, activate and configure the Ldap module but then how to verify? I can't seriously give a Cloudron login and password inside my test code and repo.

                                    nebulonN Offline
                                    nebulonN Offline
                                    nebulon
                                    Staff
                                    wrote on last edited by girish
                                    #40

                                    @jeau I've now pushed it as unstable for a start to collect further feedback.

                                    Regarding the LDAP tests, I have to take a closer look as well how to do that. If you are just concerned about the username/password, then we usually follow the pattern that you run the tests with a USERNAME and PASSWORD env variable locally against a test Cloudron. But since we have the package now in the store, we will test new releases from here on on our test Cloudrons anyways.

                                    imc67I 1 Reply Last reply
                                    2
                                    • nebulonN nebulon

                                      @jeau I've now pushed it as unstable for a start to collect further feedback.

                                      Regarding the LDAP tests, I have to take a closer look as well how to do that. If you are just concerned about the username/password, then we usually follow the pattern that you run the tests with a USERNAME and PASSWORD env variable locally against a test Cloudron. But since we have the package now in the store, we will test new releases from here on on our test Cloudrons anyways.

                                      imc67I Offline
                                      imc67I Offline
                                      imc67
                                      translator
                                      wrote on last edited by imc67
                                      #41

                                      @nebulon @jeau I just installed the app from the appstore and discovered after activating the LDAP module indeed as @girish wrote earlier a "strange" username and email.

                                      However after trial and error I succeeded to make it very workable:

                                      Schermafbeelding 2021-05-19 om 18.20.46.png

                                      The 2 attributes were empty after activating and as you see with just those 2 LDAP attributes is works fine!!

                                      For new users it might be an idea to activate the module on install and fill the fields with those to attributes?

                                      jeauJ 1 Reply Last reply
                                      1
                                      • imc67I imc67

                                        @nebulon @jeau I just installed the app from the appstore and discovered after activating the LDAP module indeed as @girish wrote earlier a "strange" username and email.

                                        However after trial and error I succeeded to make it very workable:

                                        Schermafbeelding 2021-05-19 om 18.20.46.png

                                        The 2 attributes were empty after activating and as you see with just those 2 LDAP attributes is works fine!!

                                        For new users it might be an idea to activate the module on install and fill the fields with those to attributes?

                                        jeauJ Offline
                                        jeauJ Offline
                                        jeau
                                        App Dev
                                        wrote on last edited by
                                        #42

                                        @imc67 thank's for testing.

                                        I mentioned in the documentation that you have to activate and configure the Ldap module manually. But I forgot write this in the postinstall file in order to make this information visible immediately after installation. I just did it.

                                        I'll investigate to activate the module automatically. However I hesitate to operate directly in the database. I'll ask on the Omeka forum

                                        imc67I 1 Reply Last reply
                                        3
                                        • jeauJ jeau

                                          @imc67 thank's for testing.

                                          I mentioned in the documentation that you have to activate and configure the Ldap module manually. But I forgot write this in the postinstall file in order to make this information visible immediately after installation. I just did it.

                                          I'll investigate to activate the module automatically. However I hesitate to operate directly in the database. I'll ask on the Omeka forum

                                          imc67I Offline
                                          imc67I Offline
                                          imc67
                                          translator
                                          wrote on last edited by
                                          #43

                                          @jeau thanks!!!!

                                          jeauJ 1 Reply Last reply
                                          1
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Bookmarks
                                          • Search