Exemplo n.º 1
0
    def wrapper(request, *args, **kwargs):
        data = request.headers
        authorization = decode_authorization_header(data)

        if authorization == dict():
            error = "Missing required parameter."
            return json_response({"error": error}, status=400)

        request_validator = GMGRequestValidator()
        resource_endpoint = ResourceEndpoint(request_validator)
        valid, r = resource_endpoint.validate_protected_resource_request(
            uri=request.url,
            http_method=request.method,
            body=request.data,
            headers=dict(request.headers),
        )

        if not valid:
            error = "Invalid oauth prarameter."
            return json_response({"error": error}, status=400)

        # Fill user if not already
        token = authorization[u"oauth_token"]
        request.access_token = AccessToken.query.filter_by(token=token).first()
        if request.access_token is not None and request.user is None:
            user_id = request.access_token.actor
            request.user = LocalUser.query.filter_by(id=user_id).first()

        return controller(request, *args, **kwargs)
Exemplo n.º 2
0
    def wrapper(request, *args, **kwargs):
        data = request.headers
        authorization = decode_authorization_header(data)

        if authorization == dict():
            error = "Missing required parameter."
            return json_response({"error": error}, status=400)

        request_validator = GMGRequestValidator()
        resource_endpoint = ResourceEndpoint(request_validator)
        valid, request = resource_endpoint.validate_protected_resource_request(
            uri=request.url,
            http_method=request.method,
            body=request.get_data(),
            headers=dict(request.headers),
        )

        if not valid:
            error = "Invalid oauth prarameter."
            return json_response({"error": error}, status=400)

        return controller(request, *args, **kwargs)
Exemplo n.º 3
0
        if token != 'crm':
            app.logger.debug('Failed on validate_access_token')
            return False
        return True

    def validate_realms(self,
                        client_key,
                        token,
                        request,
                        uri=None,
                        realms=None):
        return True


validator = DialerRequestValidator()
endpoint = ResourceEndpoint(validator)


def oauth_protected(realms=None):
    def wrapper(f):
        @functools.wraps(f)
        def verify_oauth(*args, **kwargs):
            app.logger.debug('Start verify request')
            app.logger.debug(
                'request.url=%s request.method=%s request.data=%s request.headers=%s realms=%s'
                % (request.url, request.method, request.form
                   or request.data, request.headers, realms))
            v, r = endpoint.validate_protected_resource_request(
                request.url,
                http_method=request.method,
                body=request.form or request.data,