예제 #1
0
  def get(self, name):
    session_id = get_session_id(session, request)

    dao = EnvironmentDAO(session_id)
    found_environment = dao.get_environment_by_name(name)
    dao.close()

    resp = make_response(json_serialize(found_environment, session_id=session_id), httplib.OK)
    resp.headers['Content-type'] = 'application/json'
    return resp
예제 #2
0
    def get(self, name):
        session_id = get_session_id(session, request)

        dao = EnvironmentDAO(session_id)
        found_environment = dao.get_environment_by_name(name)
        dao.close()

        resp = make_response(
            json_serialize(found_environment, session_id=session_id), OK)
        resp.headers['Content-type'] = 'application/json'
        return resp
예제 #3
0
    def get_vulnerable_assets(self, vulnerability_name, environment_name):
        """
    :type vulnerability_name: str
    :type environment_name: str
    :rtype: list[Asset]
    """
        vulnerability_dao = VulnerabilityDAO(self.session_id)

        try:
            found_vulnerability = vulnerability_dao.get_vulnerability_by_name(
                vulnerability_name)
            vulnerability_id = found_vulnerability.theVulnerabilityId
        except ObjectNotFoundHTTPError as ex:
            self.close()
            raise ex
        except ARMHTTPError as ex:
            self.close()
            raise ex

        environment_dao = EnvironmentDAO(self.session_id)
        try:
            found_environment = environment_dao.get_environment_by_name(
                environment_name)
            environment_id = found_environment.theId
        except ObjectNotFoundHTTPError as ex:
            self.close()
            raise ex
        except ARMHTTPError as ex:
            self.close()
            raise ex

        try:
            vulnerable_assets = self.db_proxy.vulnerableAssets(
                vulnerability_id, environment_id)
        except DatabaseProxyException as ex:
            self.close()
            raise ARMHTTPError(ex)
        except ARMException as ex:
            self.close()
            raise ARMHTTPError(ex)

        return vulnerable_assets
예제 #4
0
    def get_threatened_assets(self, threat_name, environment_name):
        """
    :type threat_name: str
    :type environment_name: str
    :rtype: list[Asset]
    """
        threat_dao = ThreatDAO(self.session_id)

        try:
            found_threat = threat_dao.get_threat_by_name(threat_name)
            threat_id = found_threat.theId
        except ObjectNotFoundHTTPError as ex:
            self.close()
            raise ex
        except ARMHTTPError as ex:
            self.close()
            raise ex

        environment_dao = EnvironmentDAO(self.session_id)
        try:
            found_environment = environment_dao.get_environment_by_name(
                environment_name)
            environment_id = found_environment.theId
        except ObjectNotFoundHTTPError as ex:
            self.close()
            raise ex
        except ARMHTTPError as ex:
            self.close()
            raise ex

        try:
            threatened_assets = self.db_proxy.threatenedAssets(
                threat_id, environment_id)
        except DatabaseProxyException as ex:
            self.close()
            raise ARMHTTPError(ex)
        except ARMException as ex:
            self.close()
            raise ARMHTTPError(ex)

        return threatened_assets
예제 #5
0
    def get_vulnerable_assets(self, vulnerability_name, environment_name):
        """
        :type vulnerability_name: str
        :type environment_name: str
        :rtype: list[Asset]
        """
        vulnerability_dao = VulnerabilityDAO(self.session_id)

        try:
            found_vulnerability = vulnerability_dao.get_vulnerability_by_name(vulnerability_name)
            vulnerability_id = found_vulnerability.theVulnerabilityId
        except ObjectNotFoundHTTPError as ex:
            self.close()
            raise ex
        except ARMHTTPError as ex:
            self.close()
            raise ex

        environment_dao = EnvironmentDAO(self.session_id)
        try:
            found_environment = environment_dao.get_environment_by_name(environment_name)
            environment_id = found_environment.theId
        except ObjectNotFoundHTTPError as ex:
            self.close()
            raise ex
        except ARMHTTPError as ex:
            self.close()
            raise ex

        try:
            vulnerable_assets = self.db_proxy.vulnerableAssets(vulnerability_id, environment_id)
        except DatabaseProxyException as ex:
            self.close()
            raise ARMHTTPError(ex)
        except ARMException as ex:
            self.close()
            raise ARMHTTPError(ex)

        return vulnerable_assets
예제 #6
0
    def get_threatened_assets(self, threat_name, environment_name):
        """
        :type threat_name: str
        :type environment_name: str
        :rtype: list[Asset]
        """
        threat_dao = ThreatDAO(self.session_id)

        try:
            found_threat = threat_dao.get_threat_by_name(threat_name)
            threat_id = found_threat.theId
        except ObjectNotFoundHTTPError as ex:
            self.close()
            raise ex
        except ARMHTTPError as ex:
            self.close()
            raise ex

        environment_dao = EnvironmentDAO(self.session_id)
        try:
            found_environment = environment_dao.get_environment_by_name(environment_name)
            environment_id = found_environment.theId
        except ObjectNotFoundHTTPError as ex:
            self.close()
            raise ex
        except ARMHTTPError as ex:
            self.close()
            raise ex

        try:
            threatened_assets = self.db_proxy.threatenedAssets(threat_id, environment_id)
        except DatabaseProxyException as ex:
            self.close()
            raise ARMHTTPError(ex)
        except ARMException as ex:
            self.close()
            raise ARMHTTPError(ex)

        return threatened_assets