def handle(self, *args, **options):

        has_expires = options.get('expires') is not None
        days = options.get('expires') or PERIMETER_DEFAULT_EXPIRY
        token = options.get('token') or AccessToken.random_token_value()
        expires_on = (now() + datetime.timedelta(days=days)).date()
        try:
            access_token = AccessToken.objects.create_access_token(
                token=token,
                expires_on=expires_on
            )
            self.stdout.write(
                'Created new access token: "{}" (expires {})'.format(
                    access_token.token,
                    access_token.expires_on
                )
            )
        except IntegrityError:
            access_token = AccessToken.objects.get(token=token)
            if has_expires:
                self.stdout.write("Extending existing token")
                access_token.expires_on = expires_on
                access_token.save()
                self.stdout.write("Token extended: {}".format(access_token))
            else:
                self.stdout.write("Token exists already - please use --expires option to extend.")
 def handle(self, *args, **options):
     days = options.get('expires') or PERIMETER_DEFAULT_EXPIRY
     token = options.get('token') or AccessToken.random_token_value()
     expires_on = (now() + datetime.timedelta(days=days)).date()
     token = AccessToken.objects.create_access_token(
         token=token,
         expires_on=expires_on
     )
     print (
         'Created new access token: "%s" (expires %s)'
         % (token.token, token.expires_on)
     )
Exemplo n.º 3
0
 def test_generate_random_token(self):
     f = AccessToken._meta.get_field('token').max_length
     t1 = AccessToken.random_token_value()
     t2 = AccessToken.random_token_value()
     self.assertNotEqual(t1, t2)
     self.assertEqual(len(t1), f)