Connect my WordPress site users to my public site account without showing my public site credentials

You should use curl method.
Here is a brief explaination:
So you have a form in your abc.com site (no need for iframe) then you should use $_POST method to send the data to a page you have created before and includes your curl php codes.
On the other server you should have created a page with your codes to receive the curl post and also after verifying user credentials send back the data (i recommend storing cookies for logged users so their credentials won’t get leaked), also using the curl.

P.s. i would add this in the comments but unfortunately i don’t have enough “reputations”