At the very beginning I was putting in incorrect authentication details for my red hat account, but this wasn’t obvious as the output of the error message looked like it was trying to authenticate with an empty username (but this seems to only happen when the username I entered contained an @ symbol, entering ‘pbrookes’ was output correctly) like this:
But this isn't an error on demo-ansible but rather an issue with the underlying subscription-management Ansible module... perhaps this needs to be filed upstream with Ansible?