I keep getting [please check to see if the host is marked as trusted.] error message while implementing RosettaNet. I am sure all host has been marked as trusted, but this error still occurs.
To solve this problem, first we have to know what a trusted host means and why is it so important.
Simply speaking, a trusted host is an evidence that the incoming message do sent from a partner you grant permissions to send you messages. Details are explained in this two articles.
So if the host has been marked as trusted, why the error keep on bothering me ?
We know that a A4RN receives incoming messages via HTTP , which means, incoming message must first processed by the IIS, in this stage, an pre-configured identify is assign to the process according to your website's application pool's identity. Incoming messages are then passed to A4RN receive port(HTTPReceive), which is also a HTTP port, which means, another identify is then assign to the process according to IIS settings.
Now, the HTTPReceive.dll is posting request into the message box with the IIS sepcified user identity, and if this account is not a trusted user account(which means, if this account is different with the one you specified in the Authentication Trusted host setting), then BizTalk denies this message from processing, because the user sending this message in is not a trusted user.
So the solution is to re-configure the IIS application pool identity to a trusted user account in BizTalk.