[Rt-commit] rt branch, 4.4/refine-external-auth-config, created. rt-4.4.0-225-g43c1318

Jim Brandt jbrandt at bestpractical.com
Tue May 17 16:11:08 EDT 2016


The branch, 4.4/refine-external-auth-config has been created
        at  43c13180c02a09251666d88ee1672c3ca30f1fc3 (commit)

- Log -----------------------------------------------------------------
commit 08f58eb1cf194a1af147fd086de76faf51463fa8
Author: Jim Brandt <jbrandt at bestpractical.com>
Date:   Tue May 17 16:03:09 2016 -0400

    Limit ExternalAuth enabled setting to ExternalSettings
    
    While ExternalAuthPriority and ExternalInfoPriority are
    important, the ExternalSettings config is essential to making
    ExternalAuth work, so automatically enable it based on
    the presence of that configuration setting only.

diff --git a/lib/RT/Config.pm b/lib/RT/Config.pm
index 6c2c842..8fef004 100644
--- a/lib/RT/Config.pm
+++ b/lib/RT/Config.pm
@@ -1078,8 +1078,6 @@ our %META;
             my $self = shift;
             my @values = @{ shift || [] };
 
-            $self->EnableExternalAuth() if @values;
-
             if (not @values) {
                 $RT::Logger->debug("ExternalAuthPriority not defined. Attempting to create based on ExternalSettings");
                 $self->Set( 'ExternalAuthPriority', \@values );
@@ -1106,8 +1104,6 @@ our %META;
             my $self = shift;
             my @values = @{ shift || [] };
 
-            $self->EnableExternalAuth() if @values;
-
             if (not @values) {
                 $RT::Logger->debug("ExternalInfoPriority not defined. User information (including user enabled/disabled) cannot be externally-sourced");
                 $self->Set( 'ExternalInfoPriority', \@values );

commit 43c13180c02a09251666d88ee1672c3ca30f1fc3
Author: Jim Brandt <jbrandt at bestpractical.com>
Date:   Tue May 17 16:06:49 2016 -0400

    Only attempt to set External Info/Auth if values are available
    
    The ExternalAuthPriority and ExternalInfoPriority options
    attempt to set values based on configuration from the
    ExternalSettings configuration option if no values are passed
    explicitly. If no values are passed and the ExternalSettings
    option is not set, bail and don't issue debug messages since
    the user clearly isn't using ExternalAuth.

diff --git a/lib/RT/Config.pm b/lib/RT/Config.pm
index 8fef004..70df38f 100644
--- a/lib/RT/Config.pm
+++ b/lib/RT/Config.pm
@@ -1078,6 +1078,8 @@ our %META;
             my $self = shift;
             my @values = @{ shift || [] };
 
+            return unless @values or $self->Get('ExternalSettings');
+
             if (not @values) {
                 $RT::Logger->debug("ExternalAuthPriority not defined. Attempting to create based on ExternalSettings");
                 $self->Set( 'ExternalAuthPriority', \@values );
@@ -1104,6 +1106,8 @@ our %META;
             my $self = shift;
             my @values = @{ shift || [] };
 
+            return unless @values or $self->Get('ExternalSettings');
+
             if (not @values) {
                 $RT::Logger->debug("ExternalInfoPriority not defined. User information (including user enabled/disabled) cannot be externally-sourced");
                 $self->Set( 'ExternalInfoPriority', \@values );

-----------------------------------------------------------------------


More information about the rt-commit mailing list