My proxy is based on mitmproxy, so I want to analyze messages coming from client to ovirt-engine or from engine to node and based on the content permit the actions or not. I know that there is access control inside oVirt, but I need to implement the similar thing by myself using proxy. From ovirt-engine to vdsm it is trickier as there I have no users and session ids to identify the actor, I can determine only actions.
By using engine or vdsm certs you could decrypt the traffic. How would you prevent command from being executed. If you drop packet(s) the engine would attempt to retry or consider vdsm to be down/dead. In either case engine would be confused.
I would not recommend such approach because it may prevent you from using oVirt or break it.
But anyway, I can decipher normal rpc ( for virt-manager), got familiar with gwt -rpc ( client-engine) and now trying to understand what is happening with xml rpc.
As Nir mentioned we estabilish tcp connection and send jsonrpc over stomp.
I need this for my proxy,
What is your proxy?
I need to do this analysis "online", not just by analyzing the logs after the action happened.
Hello!
I was successful in deciphering the traffic between the client and ovirt-engine,
Why do you need to do this? it is easier to add logging to vdsm of you want to see more info about the messages.
Anyway Piotr may help.
Nir