How would I go about customizing the implementation of azurerm_resource_group?

Our enterprise is working to close some security gaps in Azure, and the Resource Group gives us the best point of intercept.

What I’d like to explore is forking the azurerm provider and altering the implementation of the azurerm_resource_group resource so that it hits a custom API (which applies our validation and fixes, and will forward the request on to the Azure RM api).

I’m a fairly seasoned engineer, but new to Go and the provider. I found part of the definition in features.go – but if anyone could help me with some hints of what other touchpoints and tasks might be involved it would be awesome.

Thanks!