示例#1
0
def parse_http_basic(authorization_header):
    """Parse the username/credentials out of an HTTP Basic Auth header.

    Raises RequirementException if anything is uncool.
    """
    auth_scheme, auth_token = require_split(authorization_header, 2)
    require(auth_scheme.lower() == "basic")
    try:
        auth_data = base64.b64decode(auth_token)
    except TypeError:
        raise RequirementException
    return require_split(auth_data, 2, ":")
示例#2
0
def parse_http_basic(authorization_header):
    """Parse the username/credentials out of an HTTP Basic Auth header.

    Raises RequirementException if anything is uncool.
    """
    auth_scheme, auth_token = require_split(authorization_header, 2)
    require(auth_scheme.lower() == "basic")
    try:
        auth_data = base64.b64decode(auth_token)
    except TypeError:
        raise RequirementException
    return require_split(auth_data, 2, ":")
示例#3
0
 def _get_client_auth(self):
     auth = request.headers.get("Authorization")
     try:
         auth_scheme, auth_token = require_split(auth, 2)
         require(auth_scheme.lower() == "basic")
         try:
             auth_data = base64.b64decode(auth_token)
         except TypeError:
             raise RequirementException
         client_id, client_secret = require_split(auth_data, 2, ":")
         client = OAuth2Client.get_token(client_id)
         require(client)
         require(client.secret == client_secret)
         return client
     except RequirementException:
         abort(401, headers=[("WWW-Authenticate", 'Basic realm="reddit"')])
示例#4
0
 def _get_client_auth(self):
     auth = request.headers.get("Authorization")
     try:
         auth_scheme, auth_token = require_split(auth, 2)
         require(auth_scheme.lower() == "basic")
         try:
             auth_data = base64.b64decode(auth_token)
         except TypeError:
             raise RequirementException
         client_id, client_secret = require_split(auth_data, 2, ":")
         client = OAuth2Client.get_token(client_id)
         require(client)
         require(client.secret == client_secret)
         return client
     except RequirementException:
         abort(401, headers=[("WWW-Authenticate", 'Basic realm="reddit"')])
示例#5
0
 def _get_bearer_token(self):
     auth = request.headers.get("Authorization")
     try:
         auth_scheme, bearer_token = require_split(auth, 2)
         require(auth_scheme.lower() == "bearer")
         return OAuth2AccessToken.get_token(bearer_token)
     except RequirementException:
         self._auth_error(400, "invalid_request")
示例#6
0
 def _get_bearer_token(self):
     auth = request.headers.get("Authorization")
     try:
         auth_scheme, bearer_token = require_split(auth, 2)
         require(auth_scheme.lower() == "bearer")
         return OAuth2AccessToken.get_token(bearer_token)
     except RequirementException:
         self._auth_error(400, "invalid_request")
示例#7
0
文件: oauth2.py 项目: 1900/reddit
 def _get_bearer_token(self, strict=True):
     auth = request.headers.get("Authorization")
     try:
         auth_scheme, bearer_token = require_split(auth, 2)
         require(auth_scheme.lower() == "bearer")
         return bearer_token
     except RequirementException:
         if strict:
             self._auth_error(400, "invalid_request")
示例#8
0
 def _get_bearer_token(self, strict=True):
     auth = request.headers.get("Authorization")
     try:
         auth_scheme, bearer_token = require_split(auth, 2)
         require(auth_scheme.lower() == "bearer")
         return bearer_token
     except RequirementException:
         if strict:
             self._auth_error(400, "invalid_request")