snipe / snipe-it

A free open source IT asset/license management system
https://snipeitapp.com
GNU Affero General Public License v3.0
10.96k stars 3.16k forks source link

Editing LDAP Settings #1959

Closed forkitall closed 8 years ago

forkitall commented 8 years ago

Expected Behavior (or desired behavior if a feature request)

Admin > Settings > Edit Settings

I should be able to edit the settings from here

Actual Behavior

The settings are marked read only



I would like to update the email field as I wasn't aware I could possibly change it. Snipe-it throws an error is something is checked in and a user does not have an email address. I would like to resync with the user's email addresses by getting that from an attribute like I did the user name.

schannall commented 8 years ago

hi, were you logged in with an LDAP User or was it a locally configured user?

sC

snipe commented 8 years ago

v2 doens't sync LDAP users, it only imports them, so that won't work, I'm afraid. (Updating sync is in the upcoming v3.)

forkitall commented 8 years ago

were you logged in with an LDAP User or was it a locally configured user?

I tried both

forkitall commented 8 years ago

v2 doens't sync LDAP users, it only imports them, so that won't work, I'm afraid. (Updating sync is in the upcoming v3.)

I really like what you guys have here, but I'm glad really on user is going to be using this for the time being then. Could we get an update that dumps AD users and re-imports? It would be better than locking it out all together and preventing you from re-importing especially for companies that have a high turn over.

snipe commented 8 years ago

I'm not sure I understand what you mean by dumps and re-imports. v3 updates users if they already exist, adds them if they don't.

forkitall commented 8 years ago

Essentially a bulk delete of users flagged as Imported from LDAP and then re-import them. It'd be an easy way to get around this, it wasn't even allowing me to delete users.

The end result I'm looking for is to be able to import from LDAP with their email addresses filled in this time, but I cannot modify the LDAP settings.

On a side note, I noticed I can't edit the Site Name, Custom CSS, and Slack settings either.

snipe commented 8 years ago

Bulk deleting would destroy the history for all of those users, which sounds like a pretty bad idea.

You not being able to edit those settings is another problem altogether, and I'm not sure why you'd be seeing that. Can I see your app/config/app.php file?

forkitall commented 8 years ago
<?php

return array(

    /*
    |--------------------------------------------------------------------------
    | Application Timezone
    |--------------------------------------------------------------------------
    |
    | Here you may specify the default timezone for your application, which
    | will be used by the PHP date and date-time functions. We have gone
    | ahead and set this to a sensible default for you out of the box.
    |
    */

    'timezone' => 'America/New_York',

    /*
    |--------------------------------------------------------------------------
    | Application Locale
    |--------------------------------------------------------------------------
    |
    | This locale ties into the language files in app/lang, which contain the
    | language files for each translation.
    |
    */

    'locale' => 'en',

    /*
    |--------------------------------------------------------------------------
    | Autoloaded Service Providers
    |--------------------------------------------------------------------------
    |
    | This setting may be used to control the default cipher used by the Laravel
    | encryption facilities.
    |
    | Note: In Laravel 4.2, the default cipher is MCRYPT_RIJNDAEL_128 (AES),
    | which is considered to be the most secure cipher. Changing the cipher
    | back to MCRYPT_RIJNDAEL_256 is required to decrypt cookies/values that
    | were encrypted in Laravel <= 4.1
    |
    */

    'cipher' => MCRYPT_RIJNDAEL_256,

    /*
    |--------------------------------------------------------------------------
    | Prevent Password changes
    |--------------------------------------------------------------------------
    |
    | If for some reason you do not wish for admins to be able to edit the password
    | for any user (including themselves), set this to true.
    |
    */

    'lock_passwords' => true,

    /*
    |--------------------------------------------------------------------------
    | Autoloaded Service Providers
    |--------------------------------------------------------------------------
    |
    | The service providers listed here will be automatically loaded on the
    | request to your application. Feel free to add your own services to
    | this array to grant expanded functionality to your applications.
    |
    */

    'providers' => array(

        'Illuminate\Foundation\Providers\ArtisanServiceProvider',
        'Illuminate\Auth\AuthServiceProvider',
        'Illuminate\Cache\CacheServiceProvider',
        'Illuminate\Session\CommandsServiceProvider',
        'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
        'Illuminate\Routing\ControllerServiceProvider',
        'Illuminate\Cookie\CookieServiceProvider',
        'Illuminate\Database\DatabaseServiceProvider',
        'Illuminate\Encryption\EncryptionServiceProvider',
        'Illuminate\Filesystem\FilesystemServiceProvider',
        'Illuminate\Hashing\HashServiceProvider',
        'Illuminate\Html\HtmlServiceProvider',
        'Illuminate\Log\LogServiceProvider',
        'Illuminate\Mail\MailServiceProvider',
        'Illuminate\Database\MigrationServiceProvider',
        'Illuminate\Pagination\PaginationServiceProvider',
        'Illuminate\Queue\QueueServiceProvider',
        'Illuminate\Redis\RedisServiceProvider',
        'Illuminate\Remote\RemoteServiceProvider',
        'Illuminate\Auth\Reminders\ReminderServiceProvider',
        'Illuminate\Database\SeedServiceProvider',
        'Illuminate\Session\SessionServiceProvider',
        'Illuminate\Translation\TranslationServiceProvider',
        'Illuminate\Validation\ValidationServiceProvider',
        'Illuminate\View\ViewServiceProvider',
        'Illuminate\Workbench\WorkbenchServiceProvider',
        'Barryvdh\Debugbar\ServiceProvider',
        'Cartalyst\Sentry\SentryServiceProvider',
        'Chumper\Datatable\DatatableServiceProvider',
        'Maknz\Slack\SlackServiceProvider',
        'Schickling\Backup\BackupServiceProvider',
        'Chumper\Zipper\ZipperServiceProvider',
        'Fideloper\Proxy\ProxyServiceProvider',

    ),

    /*
    |--------------------------------------------------------------------------
    | Service Provider Manifest
    |--------------------------------------------------------------------------
    |
    | The service provider manifest is used by Laravel to lazy load service
    | providers which are not needed for each request, as well to keep a
    | list of all of the services. Here, you may set its storage spot.
    |
    */

    'manifest' => storage_path().'/meta',

    /*
    |--------------------------------------------------------------------------
    | Class Aliases
    |--------------------------------------------------------------------------
    |
    | This array of class aliases will be registered when this application
    | is started. However, feel free to register as many as you wish as
    | the aliases are "lazy" loaded so they don't hinder performance.
    |
    */

    'aliases' => array(

            'App'                       => 'Illuminate\Support\Facades\App',
            'Artisan'                   => 'Illuminate\Support\Facades\Artisan',
            'Auth'                      => 'Illuminate\Support\Facades\Auth',
            'Blade'                     => 'Illuminate\Support\Facades\Blade',
            'Cache'                     => 'Illuminate\Support\Facades\Cache',
            'ClassLoader'               => 'Illuminate\Support\ClassLoader',
            'Config'                    => 'Illuminate\Support\Facades\Config',
            'Controller'                => 'Illuminate\Routing\Controller',
            'Cookie'                    => 'Illuminate\Support\Facades\Cookie',
            'Crypt'                     => 'Illuminate\Support\Facades\Crypt',
            'DB'                        => 'Illuminate\Support\Facades\DB',
            'Datatable'                         => 'Chumper\Datatable\Facades\DatatableFacade',
            'Eloquent'                  => 'Illuminate\Database\Eloquent\Model',
            'Event'                     => 'Illuminate\Support\Facades\Event',
            'File'                      => 'Illuminate\Support\Facades\File',
            'Form'                      => 'Illuminate\Support\Facades\Form',
            'Hash'                      => 'Illuminate\Support\Facades\Hash',
            'HTML'                      => 'Illuminate\Support\Facades\HTML',
                        'Image'                         => 'Intervention\Image\ImageManagerStatic',
            'Input'                     => 'Illuminate\Support\Facades\Input',
            'Lang'                      => 'Illuminate\Support\Facades\Lang',
            'Log'                       => 'Illuminate\Support\Facades\Log',
            'Mail'                      => 'Illuminate\Support\Facades\Mail',
            'Paginator'                 => 'Illuminate\Support\Facades\Paginator',
            'Password'                  => 'Illuminate\Support\Facades\Password',
            'Queue'                     => 'Illuminate\Support\Facades\Queue',
            'Redirect'                  => 'Illuminate\Support\Facades\Redirect',
            'Redis'                     => 'Illuminate\Support\Facades\Redis',
            'Request'                   => 'Illuminate\Support\Facades\Request',
            'Response'                  => 'Illuminate\Support\Facades\Response',
            'Route'                     => 'Illuminate\Support\Facades\Route',
            'Schema'                    => 'Illuminate\Support\Facades\Schema',
            'Seeder'                    => 'Illuminate\Database\Seeder',
            'Sentry'                    => 'Cartalyst\Sentry\Facades\Laravel\Sentry',
            'Session'                   => 'Illuminate\Support\Facades\Session',
            'SoftDeletingTrait'     => 'Illuminate\Database\Eloquent\SoftDeletingTrait',
            'SSH'                       => 'Illuminate\Support\Facades\SSH',
            'Str'                       => 'Illuminate\Support\Str',
            'URL'                       => 'Illuminate\Support\Facades\URL',
            'Validator'                 => 'Illuminate\Support\Facades\Validator',
            'View'                      => 'Illuminate\Support\Facades\View',
            'Reader'                            => 'League\Csv\Reader',
            'Slack'                             => 'Maknz\Slack\Facades\Slack',
            'Zipper'                => 'Chumper\Zipper\Zipper',

    ),

);

Here it is

snipe commented 8 years ago

'lock_passwords' => true,

That's your problem. That setting does a lot more than that. We basically use it to lock down the demo so that spammers and jackholes cannot screw with the settings. (It was a problem for a while.) Set that back to false.

forkitall commented 8 years ago

haha really?

snipe commented 8 years ago

Yeah, it's why we don't document that anywhere. It's not really meant for "normal" people to use. It should really be called app_lockdown or something more intuitive, but you're literally the first person to ever set that to true other than us. It basically exists to limit features to prevent abuse from jerks on a public demo.

snipe commented 8 years ago

In fact, in the upcoming v3, we've renamed it to APP_LOCKED for that reason.

forkitall commented 8 years ago

Leave it to me. APP_LOCKED is a much better name for that setting. Lol. Any timeline on V3 btw? I'd really like to spread the word about this.

snipe commented 8 years ago

Hoping to have an RC out this week? It's already a few weeks late, but we're still working through a few things (and revamping ALL of the docs, etc).

snipe commented 8 years ago

(I feel like I say "hoping to have an RC out this week?" every week.)

84years

forkitall commented 8 years ago

Literally LOL'd.

snipe commented 8 years ago

This is a really big update. Literally every file in Snipe-IT has been changed, so much so that Git can't even grok them as the same source. We upgraded to Laravel 5.2, which moves a huge amount of things around, and also flattened some of the other directory structures. We've had a few brave souls start testing out v3 using the beta upgrade guide in the new docs, (and so far, somehow that seems to be going well), but there are still a few more things I want to have handled before we push to RC. It's my own fault - I should have done what I originally intended which was just seek feature parity, but yak shaving and scope-creep are harsh mistresses.

cleanup

forkitall commented 8 years ago

Oh yes. Thanks for your help.