Beispiel #1
0
    def __call__(self, req):
        before = time.time()
        user_obj = None
        request_id = str(uuid.uuid4())
        try:
            log(logging.INFO, "%s Enter main router | %s" % (request_id, str(req.params)))
            authz = self._cfg.get_authz()

            access_dict = get_aws_access_key(req)
            user_obj = authz.get_user_object_by_access_id(access_dict['AWSAccessKeyId'])
            authenticate_user(user_obj.secret_key, req, access_dict)
            key = 'Action'
            if key not in req.params.keys():
                raise PhantomAWSException('InvalidParameterValue')
            action = req.params['Action']

            global _action_to_application_map
            if action not in _action_to_application_map:
                raise webob.exc.HTTPNotFound("No action %s" % action)

            app_cls = _action_to_application_map[action]

            log(logging.INFO, "%s Getting phantom action %s" % (request_id, action))

            app = app_cls(action, cfg=self._cfg)
        except Exception, ex:
            log(logging.ERROR, "%s Exiting main router with error %s" % (request_id, str(ex)))
            raise
Beispiel #2
0
    def get_user_obj(self, req):
        access_dict = get_aws_access_key(req)

        user_obj = self._authz.get_user_object_by_access_id(access_dict['AWSAccessKeyId'])
        return user_obj
Beispiel #3
0
    def get_user_obj(self, req):
        access_dict = get_aws_access_key(req)

        user_obj = self._authz.get_user_object_by_access_id(
            access_dict['AWSAccessKeyId'])
        return user_obj