I am using an Azure virtual machine with SQL Server 2008 Standard Edition as a publisher and distributor. To enable this to work over the public Internet I have set it up to use Web Synchronization though IIS. Using a browser on my client machine I can access the https://machine.cloudapp.net/SQLReplication/replisapi.dll?diag file and it returns correctly with diagnostic information and with success messages.
My client is able to create a subscription to the server and begin the synchronization process but then gives the following error...
You do not have the required permissions to complete the operation.
The full log from synchronizing is as follows...
Checking for resolver dll
Resolver dll found
Checking resolver connectivity
Resolver connectivity verified
The upload message to be sent to Publisher 'machine.cloudapp.net' is being generated
The merge process is using Exchange ID 'DEC300A9-3C95-4AB9-81D6-664B70FA5400' for this web synchronization session.
No data needed to be merged.
Request message generated, now making it ready for upload.
Upload request size is 1877 bytes.
Uploaded a total of 1 chunks.
The request message was sent to 'https://machine.cloudapp.net/SQLReplication/replisapi.dll'
Downloaded a total of 3 chunks.
The response message was received from 'https://machine.cloudapp.net/SQLReplication/replisapi.dll' and is being processed.
The remote server "machine.cloudapp.net" does not exist, or has not been designated as a valid Publisher, or you may not have permission to see available Publishers.
The remote server "machine.cloudapp.net" does not exist, or has not been designated as a valid Publisher, or you may not have permission to see available Publishers.
{call sp_helpdistpublisher (N'machine.cloudapp.net') }
You do not have the required permissions to complete the operation.
On the server the the ReplData directory has full access for everyone and the synchronization login provides the machine administrator username and password so I am not sure how it can actually not have permission to work.
Any ideas?