Example #1
0
def topological_graph_show(request):
    status1, topo_data= HTTPclient.http_request(TOPO_URL,"GET")
    topo_data=json.dumps(topo_data)

    status2, link_data = HTTPclient.http_request(LINK_URL,"GET")
    link_data=json.dumps(link_data)

    status3, global_data = HTTPclient.http_request(GLOBAL_URL,"GET")
    global_data=json.dumps(global_data)

    #为了动态加载页面中的搜索项,方便用户知道有什么备选src_mac等可供查询
    parse_data = json.loads(global_data)
    result = parse_data["result"]
    src_mac = []
    dst_mac = []
    src_ip = []
    dst_ip = []
    src_port = []
    dst_port = []
    for key in result:
        try:
            src_mac.append(result[key]["matchlist"][0]["dataLayerSource"])
            dst_mac.append(result[key]["matchlist"][0]['dataLayerDestination'])
            src_ip.append(result[key]['matchlist'][0]['networkSource'])
            dst_ip.append(result[key]['matchlist'][0]['networkDestination'])
            src_port.append(result[key]['matchlist'][0]['transportSource'])
            dst_port.append(result[key]['matchlist'][0]['transportDestination'])
        except:
            continue
    src_mac = json.dumps(list(set(src_mac)))
    dst_mac = json.dumps(list(set(dst_mac)))
    src_ip = json.dumps(list(set(src_ip)))
    dst_ip = json.dumps(list(set(dst_ip)))
    src_port = json.dumps(list(set(src_port)))
    dst_port = json.dumps(list(set(dst_port)))
    parse_data = json.dumps(result)

    args_data = {
            'cv_topological_graph': True,
            'topo_data': topo_data,
            'link_data': link_data,
            'global_data': global_data,
            'src_mac':src_mac,
            'dst_mac':dst_mac,
            'src_ip':src_ip,
            'dst_ip':dst_ip,
            'src_port':src_port,
            'dst_port':dst_port,
            }
    return render_to_response('viewapp/topological_graph.html',
                              args_data,
                              context_instance=RequestContext(request))
Example #2
0
def record_retrieve(request):
    status1, topo_data= HTTPclient.http_request(TOPO_URL,"GET")
    topo_data=json.dumps(topo_data)

    status2, link_data = HTTPclient.http_request(LINK_URL,"GET")
    link_data=json.dumps(link_data)

    args_data = {
            'cv_record_retrieve': True,
            'topo_data': topo_data,
            'link_data': link_data,
            }
    return render_to_response('viewapp/record_retrieve.html',
                              args_data,
                              context_instance=RequestContext(request))
Example #3
0
def dealWithForm(request):
    print "request body:"
    print str(request.body)
    req= request.REQUEST#json.loads(request.body)
    post_data={}
    if(req.get('src_mac')):
        post_data['dataLayerSource']=req.get('src_mac')
    if(req.get('dst_mac')):
        post_data['dataLayerDestination']=req.get('dst_mac')
    if(req.get('proto')):
        post_data['networkProtocol']=int(req.get('proto'))
    if(req.get('src_ip')):
        post_data['networkSource']=req.get('src_ip')
    if(req.get('dst_ip')):
        post_data['networkDestination']=req.get('dst_ip')
    if(req.get('src_port')):
        post_data['transportSource']=req.get('src_port')
    if(req.get('dst_port')):
        post_data['transportDestination']=req.get('dst_port')
    if(req.get('curPage')):
        post_data['curPage']=req.get('curPage')
    if(req.get('size')):
        post_data['size']=req.get('size')
    url=SECURITY_CONTROLLER+'/sc/globalflow/'
    post_str=json.dumps(post_data)
    print 'post data:',post_str
    print 'url :',url
    status, result= HTTPclient.http_request(url,"POST",post_str)
    resp=json.dumps(result)
    return HttpResponse(resp)
Example #4
0
def dealWithFormFlow(request):
    print "ok"
    req= request.REQUEST#json.loads(request.body)
    get_data=""
    post_data={}
    if(req.get('src_mac')):
        post_data['dataLayerSource']=req.get('src_mac')
    if(req.get('dst_mac')):
        post_data['dataLayerDestination']=req.get('dst_mac')
    if(req.get('proto')):
        post_data['networkProtocol']=int(req.get('proto'))
    if(req.get('src_ip')):
        post_data['networkSource']=req.get('src_ip')
    if(req.get('dst_ip')):
        post_data['networkDestination']=req.get('dst_ip')
    if(req.get('src_port')):
        post_data['transportSource']=req.get('src_port')
    if(req.get('dst_port')):
        post_data['transportDestination']=req.get('dst_port')
    if(req.get('starttime')):
        post_data['starttime']=req.get('starttime')
    if(req.get('starttime')):
        post_data['endtime']=req.get('endtime')
    url=SECURITY_CONTROLLER+'/sc/globalflow/'
    post_str=json.dumps(post_data);
    print url
    print post_str
    result=HTTPclient.http_request(url,"GET",post_str)
    resp=json.dumps(result)
    #print str(resp)
    return HttpResponse(resp)
Example #5
0
def os_topology(request):
    """
    Display SecurityDevice's network topology
    """
    status, OS_TOPOLOGY= HTTPclient.http_request(OS_TOPOLOGY_URL,"GET")
    OS_TOPOLOGY=json.dumps(OS_TOPOLOGY)

    args_data = {
            'cv_OSTopology': True,
            'OS_TOPOLOGY': OS_TOPOLOGY,
            }
    return render_to_response(
            "viewapp/os_topology.html",
            args_data,
            context_instance=RequestContext(request)
            )