Making provider and credentials an attribute

Yes, I will make some changes and re-submit.