Пример #1
0
def setup():
    auth = YubiAuth()
    for user in auth.query_users():
        auth.get_user(user['id']).delete()
    auth.commit()
    auth.create_user('user1', 'pass1')
    auth.create_user('user2', 'pass2')
    auth.commit()
    del auth
Пример #2
0
def setup():
    auth = YubiAuth()
    for user in auth.query_users():
        auth.get_user(user['id']).delete()
    auth.commit()
    auth.create_user('user1', 'pass1')
    auth.create_user('user2', 'pass2')
    auth.commit()
    del auth
Пример #3
0
class YubiAuthUsers(CollectionApp):
    base_url = '/auth/users'
    item_name = 'Users'
    caption = 'YubiAuth Users'
    columns = ['Username', 'YubiKeys']
    template = 'auth/list'

    def __init__(self):
        from yubiauth.core.model import User as _user
        self.User = _user
        self.auth = YubiAuth()

    def __enter__(self):
        return self

    def __exit__(self, type, value, traceback):
        del self.auth

    def _size(self):
        return self.auth.session.query(self.User).count()

    def _get(self, offset=0, limit=None):
        users = self.auth.session.query(self.User).order_by(self.User.name) \
            .offset(offset).limit(limit)

        return map(lambda user: {
            'id': user.id,
            'label': user.name,
            'Username': '******' % (user.id,
                                                                  user.name),
            'YubiKeys': ', '.join(user.yubikeys.keys())
        }, users)

    def _labels(self, ids):
        users = self.auth.session.query(self.User.name) \
            .filter(self.User.id.in_(map(int, ids))).all()
        return map(lambda x: x[0], users)

    def _delete(self, ids):
        self.auth.session.query(self.User) \
            .filter(self.User.id.in_(map(int, ids))).delete('fetch')
        self.auth.commit()

    def create(self, request):
        return self.render_forms(request, [CreateUserForm(self.auth)],
                                 success_msg='User created!')

    def show(self, request):
        id = int(request.path_info_pop())
        user = self.auth.get_user(id)
        if 'unassign' in request.params:
            del user.yubikeys[request.params['unassign']]
            self.auth.commit()
        msg = None
        if 'password' in request.params:
            msg = 'Password set!'
        return self.render_forms(request,
                                 [SetPasswordForm(user, self.auth),
                                 AssignYubiKeyForm(user, self.auth)],
                                 'auth/user', user=user,
                                 success_msg=msg)
Пример #4
0
def setup():
    auth = YubiAuth()
    for user in auth.query_users():
        auth.get_user(user['id']).delete()
    auth.commit()
    del auth
Пример #5
0
def setup():
    auth = YubiAuth()
    for user in auth.query_users():
        auth.get_user(user['id']).delete()
    auth.commit()
    del auth
Пример #6
0
class YubiAuthUsers(CollectionApp):
    base_url = '/auth/users'
    item_name = 'Users'
    caption = 'YubiAuth Users'
    columns = ['Username', 'YubiKeys']
    template = 'auth/list'

    def __init__(self):
        from yubiauth.core.model import User as _user
        self.User = _user
        self.auth = YubiAuth()

    def __enter__(self):
        return self

    def __exit__(self, type, value, traceback):
        del self.auth

    def _size(self):
        return self.auth.session.query(self.User).count()

    def _get(self, offset=0, limit=None):
        users = self.auth.session.query(self.User).order_by(self.User.name) \
            .offset(offset).limit(limit)

        return map(
            lambda user: {
                'id':
                user.id,
                'label':
                user.name,
                'Username':
                '******' % (user.id, user.name),
                'YubiKeys':
                ', '.join(user.yubikeys.keys())
            }, users)

    def _labels(self, ids):
        users = self.auth.session.query(self.User.name) \
            .filter(self.User.id.in_(map(int, ids))).all()
        return map(lambda x: x[0], users)

    def _delete(self, ids):
        self.auth.session.query(self.User) \
            .filter(self.User.id.in_(map(int, ids))).delete('fetch')
        self.auth.commit()

    def create(self, request):
        return self.render_forms(request, [CreateUserForm(self.auth)],
                                 success_msg='User created!')

    def show(self, request):
        id = int(request.path_info_pop())
        user = self.auth.get_user(id)
        if 'unassign' in request.params:
            del user.yubikeys[request.params['unassign']]
            self.auth.commit()
        msg = None
        if 'password' in request.params:
            msg = 'Password set!'
        return self.render_forms(request, [
            SetPasswordForm(user, self.auth),
            AssignYubiKeyForm(user, self.auth)
        ],
                                 'auth/user',
                                 user=user,
                                 success_msg=msg)