コード例 #1
0
ファイル: auth.py プロジェクト: Jyonn/Rizya
    def _extract_user(cls, r):
        r.user = None

        dict_ = cls.validate_token(r)
        user_id = dict_.get('user_id')
        if not user_id:
            raise AuthError.TOKEN_MISS_PARAM('user_id')
        session_key = dict_.get("session_key")
        if not session_key:
            raise AuthError.TOKEN_MISS_PARAM('session_key')
        type_ = dict_.get('type')
        if type_ != AuthType.LOGIN:
            raise AuthError.TOKEN_MISS_PARAM('type')

        if DEV_MODE:
            r.session_key = session_key
        else:
            r.session_key = Crypto.AES.decrypt(session_key)
        r.user = User.get(user_id)
コード例 #2
0
ファイル: views.py プロジェクト: Jyonn/Rizya
 def get(r):
     if r.d.secret_key == SECRET_KEY:
         user = User.get(r.d.user_id)
         return Auth.get_login_token(user, session_key='null')
     return ''
コード例 #3
0
 def get_by_union(cls, space_user_union: str):
     space_name, user_id = space_user_union.rsplit('-', 1)
     space = Space.get(space_name)
     user = User.get(user_id)
     return space.get_member(user)