This sounds like you are applying Ansible playbooks locally on peoples workstations.
The best way to protect this would be applying the playbooks using a remote system, like AWX or a CI system such as GitHub Actions or TeamCity. The CI system would have the ability to decrypt the vault and run the playbooks.
Mostly the CI system can expose the vault password ...
Not technically, I understand your need to create and destroy EC2 instances, whether it's done via automation or not. About having permissions at the security group level, this can often be limited to viewing only the resource, as it is a networking firewall resource, usually who manages these objects are SDN or NaaS