It looks like there is a missing typedef in swagger specs of ManagedServiceIdentity:
https://github.com/Azure/azure-rest-api-specs/blob/master/specification/web/resource-manager/Microsoft.Web/stable/2016-03-01/CommonDefinitions.json#L1038
This breaks the go SDK that expects a map while the output of the identity field is a plain string:
{
.....
"kind": "app",
},
"identity": {
"type": "SystemAssigned",
"tenantId": "....",
"principalId": "......"
}
}
see also
Azure/azure-sdk-for-go#992 (comment)