IwbZeroSettingProvider.cs 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138
  1. using System.Collections.Generic;
  2. using Abp.Configuration;
  3. using Abp.Dependency;
  4. using Abp.Localization;
  5. namespace IwbZero.Zero.Configuration
  6. {
  7. public class IwbZeroSettingProvider : SettingProvider
  8. {
  9. protected readonly IIocManager IocManager;
  10. public IwbZeroSettingProvider(IIocManager iocManager)
  11. {
  12. IocManager = iocManager;
  13. }
  14. public override IEnumerable<SettingDefinition> GetSettingDefinitions(SettingDefinitionProviderContext context)
  15. {
  16. var list = new List<SettingDefinition>
  17. {
  18. new SettingDefinition(
  19. IwbZeroSettingNames.UserManagement.IsEmailConfirmationRequiredForLogin,
  20. "false",
  21. new FixedLocalizableString("Is email confirmation required for login."),
  22. scopes: SettingScopes.Application | SettingScopes.Tenant,
  23. clientVisibilityProvider: new VisibleSettingClientVisibilityProvider()
  24. ),
  25. new SettingDefinition(
  26. IwbZeroSettingNames.OrganizationUnits.MaxUserMembershipCount,
  27. int.MaxValue.ToString(),
  28. new FixedLocalizableString("Maximum allowed organization unit membership count for a user."),
  29. scopes: SettingScopes.Application | SettingScopes.Tenant,
  30. clientVisibilityProvider: new VisibleSettingClientVisibilityProvider()
  31. ),
  32. new SettingDefinition(
  33. IwbZeroSettingNames.UserManagement.TwoFactorLogin.IsEnabled,
  34. "true",
  35. new FixedLocalizableString("Is two factor login enabled."),
  36. scopes: SettingScopes.Application | SettingScopes.Tenant,
  37. clientVisibilityProvider: new VisibleSettingClientVisibilityProvider()
  38. ),
  39. new SettingDefinition(
  40. IwbZeroSettingNames.UserManagement.TwoFactorLogin.IsRememberBrowserEnabled,
  41. "true",
  42. new FixedLocalizableString("Is browser remembering enabled for two factor login."),
  43. scopes: SettingScopes.Application | SettingScopes.Tenant,
  44. clientVisibilityProvider: new VisibleSettingClientVisibilityProvider()
  45. ),
  46. new SettingDefinition(
  47. IwbZeroSettingNames.UserManagement.TwoFactorLogin.IsEmailProviderEnabled,
  48. "true",
  49. new FixedLocalizableString("Is email provider enabled for two factor login."),
  50. scopes: SettingScopes.Application | SettingScopes.Tenant,
  51. clientVisibilityProvider: new VisibleSettingClientVisibilityProvider()
  52. ),
  53. new SettingDefinition(
  54. IwbZeroSettingNames.UserManagement.TwoFactorLogin.IsSmsProviderEnabled,
  55. "true",
  56. new FixedLocalizableString("Is sms provider enabled for two factor login."),
  57. scopes: SettingScopes.Application | SettingScopes.Tenant,
  58. clientVisibilityProvider: new VisibleSettingClientVisibilityProvider()
  59. ),
  60. new SettingDefinition(
  61. IwbZeroSettingNames.UserManagement.UserLockOut.IsEnabled,
  62. "true",
  63. new FixedLocalizableString("Is user lockout enabled."),
  64. scopes: SettingScopes.Application | SettingScopes.Tenant,
  65. clientVisibilityProvider: new VisibleSettingClientVisibilityProvider()
  66. ),
  67. new SettingDefinition(
  68. IwbZeroSettingNames.UserManagement.UserLockOut.MaxFailedAccessAttemptsBeforeLockout,
  69. "5",
  70. new FixedLocalizableString("Maxumum Failed access attempt count before user lockout."),
  71. scopes: SettingScopes.Application | SettingScopes.Tenant,
  72. clientVisibilityProvider: new VisibleSettingClientVisibilityProvider()
  73. ),
  74. new SettingDefinition(
  75. IwbZeroSettingNames.UserManagement.UserLockOut.DefaultAccountLockoutSeconds,
  76. "300", //5 minutes
  77. new FixedLocalizableString("User lockout in seconds."),
  78. scopes: SettingScopes.Application | SettingScopes.Tenant,
  79. clientVisibilityProvider: new VisibleSettingClientVisibilityProvider()
  80. ),
  81. new SettingDefinition(
  82. IwbZeroSettingNames.UserManagement.PasswordComplexity.RequireDigit,
  83. "false",
  84. new FixedLocalizableString("Require digit."),
  85. scopes: SettingScopes.Application | SettingScopes.Tenant,
  86. clientVisibilityProvider: new VisibleSettingClientVisibilityProvider()
  87. ),
  88. new SettingDefinition(
  89. IwbZeroSettingNames.UserManagement.PasswordComplexity.RequireLowercase,
  90. "false",
  91. new FixedLocalizableString("Require lowercase."),
  92. scopes: SettingScopes.Application | SettingScopes.Tenant,
  93. clientVisibilityProvider: new VisibleSettingClientVisibilityProvider()
  94. ),
  95. new SettingDefinition(
  96. IwbZeroSettingNames.UserManagement.PasswordComplexity.RequireNonAlphanumeric,
  97. "false",
  98. new FixedLocalizableString("Require non alphanumeric."),
  99. scopes: SettingScopes.Application | SettingScopes.Tenant,
  100. clientVisibilityProvider: new VisibleSettingClientVisibilityProvider()
  101. ),
  102. new SettingDefinition(
  103. IwbZeroSettingNames.UserManagement.PasswordComplexity.RequireUppercase,
  104. "false",
  105. new FixedLocalizableString("Require upper case."),
  106. scopes: SettingScopes.Application | SettingScopes.Tenant,
  107. clientVisibilityProvider: new VisibleSettingClientVisibilityProvider()
  108. ),
  109. new SettingDefinition(
  110. IwbZeroSettingNames.UserManagement.PasswordComplexity.RequiredLength,
  111. "3",
  112. new FixedLocalizableString("Required length."),
  113. scopes: SettingScopes.Application | SettingScopes.Tenant,
  114. clientVisibilityProvider: new VisibleSettingClientVisibilityProvider()
  115. )
  116. };
  117. return list;
  118. }
  119. }
  120. }