How to changing the transport lay from ssh to http?

Recently we are trying to use ansible as our deployment tool. However, for security reason, we can not connect to our target machine through SSH2.
Instead SSH2, our operations engineers provide a service based on HTTP through which we can run system command on target machine.
I know that the transport layer of ansible is plugable and the module executed by ansible are copied to target machine and run locally.
My question is

  1. Is is workable to write a transport layer over http while keep all the ansible core modules functional?

  2. Is there any resource about this topic?

Any advice is much appreciated!

I very strongly recommend against doing this. Even if you do this over HTTPS, the web server would need to have full access to your system. This would be much more insecure than running SSH on the target systems.

Instead of setting up a webserver that runs commands as root on your systems, consider using ansible-pull, it reverses the communication and you can host git over ssh or htttps which will act as the ‘server’ hosting the plays.