mirror of
				https://github.com/apache/cloudstack.git
				synced 2025-10-26 08:42:29 +01:00 
			
		
		
		
	server: add user.password.reset.smtp.useStartTLS and enabledSecurityProtocols for password reset (#11228)
This commit is contained in:
		
							parent
							
								
									8e4dc0a66d
								
							
						
					
					
						commit
						963a67b816
					
				| @ -55,6 +55,17 @@ public interface UserPasswordResetManager { | ||||
|             "Use auth in the SMTP server for sending emails for resetting password for ACS users", | ||||
|             false, ConfigKey.Scope.Global); | ||||
| 
 | ||||
|     ConfigKey<Boolean> UserPasswordResetSMTPUseStartTLS = new ConfigKey<>(ConfigKey.CATEGORY_ADVANCED, | ||||
|             Boolean.class, "user.password.reset.smtp.useStartTLS", "false", | ||||
|             "If set to true and if we enable security via user.password.reset.smtp.useAuth, this will enable StartTLS to secure the connection.", | ||||
|             true, | ||||
|             ConfigKey.Scope.Global); | ||||
| 
 | ||||
|     ConfigKey<String> UserPasswordResetSMTPEnabledSecurityProtocols = new ConfigKey<String>(ConfigKey.CATEGORY_ADVANCED, | ||||
|             String.class, "user.password.reset.smtp.enabledSecurityProtocols", "", | ||||
|             "White-space separated security protocols; ex: \"TLSv1 TLSv1.1\". Supported protocols: SSLv2Hello, SSLv3, TLSv1, TLSv1.1 and TLSv1.2", | ||||
|             true, ConfigKey.Kind.WhitespaceSeparatedListWithOptions, "SSLv2Hello,SSLv3,TLSv1,TLSv1.1,TLSv1.2"); | ||||
| 
 | ||||
|     ConfigKey<String> UserPasswordResetSMTPUsername = new ConfigKey<>(ConfigKey.CATEGORY_ADVANCED, | ||||
|             String.class, "user.password.reset.smtp.username", null, | ||||
|             "Username for SMTP server for sending emails for resetting password for ACS users", | ||||
|  | ||||
| @ -93,6 +93,8 @@ public class UserPasswordResetManagerImpl extends ManagerBase implements UserPas | ||||
|                 UserPasswordResetSMTPHost, | ||||
|                 UserPasswordResetSMTPPort, | ||||
|                 UserPasswordResetSMTPUseAuth, | ||||
|                 UserPasswordResetSMTPUseStartTLS, | ||||
|                 UserPasswordResetSMTPEnabledSecurityProtocols, | ||||
|                 UserPasswordResetSMTPUsername, | ||||
|                 UserPasswordResetSMTPPassword, | ||||
|                 PasswordResetMailTemplate | ||||
| @ -106,6 +108,8 @@ public class UserPasswordResetManagerImpl extends ManagerBase implements UserPas | ||||
|         Boolean useAuth = UserPasswordResetSMTPUseAuth.value(); | ||||
|         String username = UserPasswordResetSMTPUsername.value(); | ||||
|         String password = UserPasswordResetSMTPPassword.value(); | ||||
|         Boolean useStartTLS = UserPasswordResetSMTPUseStartTLS.value(); | ||||
|         String enabledSecurityProtocols = UserPasswordResetSMTPEnabledSecurityProtocols.value(); | ||||
| 
 | ||||
|         if (!StringUtils.isEmpty(smtpHost) && smtpPort != null && smtpPort > 0) { | ||||
|             String namespace = "password.reset.smtp"; | ||||
| @ -117,6 +121,8 @@ public class UserPasswordResetManagerImpl extends ManagerBase implements UserPas | ||||
|             configs.put(getKey(namespace, SMTPMailSender.CONFIG_USE_AUTH), useAuth.toString()); | ||||
|             configs.put(getKey(namespace, SMTPMailSender.CONFIG_USERNAME), username); | ||||
|             configs.put(getKey(namespace, SMTPMailSender.CONFIG_PASSWORD), password); | ||||
|             configs.put(getKey(namespace, SMTPMailSender.CONFIG_USE_STARTTLS), useStartTLS.toString()); | ||||
|             configs.put(getKey(namespace, SMTPMailSender.CONFIG_ENABLED_SECURITY_PROTOCOLS), enabledSecurityProtocols); | ||||
| 
 | ||||
|             mailSender = new SMTPMailSender(configs, namespace); | ||||
|         } | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user