from django.db import models from django.utils.translation import ugettext_lazy as _ class StrategyChoice(models.TextChoices): push = 'push', _('Push') verify = 'verify', _('Verify') collect = 'collect', _('Collect') change_secret = 'change_secret', _('Change password') class SSHKeyStrategy(models.TextChoices): add = 'add', _('Append SSH KEY') set = 'set', _('Empty and append SSH KEY') set_jms = 'set_jms', _('Replace (The key generated by JumpServer) ') class PasswordStrategy(models.TextChoices): custom = 'custom', _('Custom password') random_one = 'random_one', _('All assets use the same random password') random_all = 'random_all', _('All assets use different random password') string_punctuation = '!#$%&()*+,-.:;<=>?@[]^_~' DEFAULT_PASSWORD_LENGTH = 30 DEFAULT_PASSWORD_RULES = { 'length': DEFAULT_PASSWORD_LENGTH, 'symbol_set': string_punctuation }