mirror of
				https://github.com/matrix-org/synapse.git
				synced 2025-10-25 22:32:03 +02:00 
			
		
		
		
	Merge pull request #2607 from matrix-org/rav/cleanup_ldap_hacks
Clean up backwards-compat hacks for ldap
This commit is contained in:
		
						commit
						b8e54fbc08
					
				| @ -13,41 +13,40 @@ | ||||
| # See the License for the specific language governing permissions and | ||||
| # limitations under the License. | ||||
| 
 | ||||
| from ._base import Config, ConfigError | ||||
| from ._base import Config | ||||
| 
 | ||||
| from synapse.util.module_loader import load_module | ||||
| 
 | ||||
| LDAP_PROVIDER = 'ldap_auth_provider.LdapAuthProvider' | ||||
| 
 | ||||
| 
 | ||||
| class PasswordAuthProviderConfig(Config): | ||||
|     def read_config(self, config): | ||||
|         self.password_providers = [] | ||||
| 
 | ||||
|         provider_config = None | ||||
|         providers = [] | ||||
| 
 | ||||
|         # We want to be backwards compatible with the old `ldap_config` | ||||
|         # param. | ||||
|         ldap_config = config.get("ldap_config", {}) | ||||
|         self.ldap_enabled = ldap_config.get("enabled", False) | ||||
|         if self.ldap_enabled: | ||||
|             from ldap_auth_provider import LdapAuthProvider | ||||
|             parsed_config = LdapAuthProvider.parse_config(ldap_config) | ||||
|             self.password_providers.append((LdapAuthProvider, parsed_config)) | ||||
|         if ldap_config.get("enabled", False): | ||||
|             providers.append[{ | ||||
|                 'module': LDAP_PROVIDER, | ||||
|                 'config': ldap_config, | ||||
|             }] | ||||
| 
 | ||||
|         providers = config.get("password_providers", []) | ||||
|         providers.extend(config.get("password_providers", [])) | ||||
|         for provider in providers: | ||||
|             mod_name = provider['module'] | ||||
| 
 | ||||
|             # This is for backwards compat when the ldap auth provider resided | ||||
|             # in this package. | ||||
|             if provider['module'] == "synapse.util.ldap_auth_provider.LdapAuthProvider": | ||||
|                 from ldap_auth_provider import LdapAuthProvider | ||||
|                 provider_class = LdapAuthProvider | ||||
|                 try: | ||||
|                     provider_config = provider_class.parse_config(provider["config"]) | ||||
|                 except Exception as e: | ||||
|                     raise ConfigError( | ||||
|                         "Failed to parse config for %r: %r" % (provider['module'], e) | ||||
|                     ) | ||||
|             else: | ||||
|                 (provider_class, provider_config) = load_module(provider) | ||||
|             if mod_name == "synapse.util.ldap_auth_provider.LdapAuthProvider": | ||||
|                 mod_name = LDAP_PROVIDER | ||||
| 
 | ||||
|             (provider_class, provider_config) = load_module({ | ||||
|                 "module": mod_name, | ||||
|                 "config": provider['config'], | ||||
|             }) | ||||
| 
 | ||||
|             self.password_providers.append((provider_class, provider_config)) | ||||
| 
 | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user