Переходя через Интернет, вы, вероятно, захотите убедиться, что включена защита сообщений. В Интернете вы, как правило, не можете использовать безопасность на транспорте, поскольку не можете контролировать количество посредников между клиентским компьютером и вашим сервисом.
Также вам нужно подумать о том, какую привязку использовать в целом:
webHttpBinding - это НАИЛУЧШИЙ способ ведения дел - легкий, его можно просматривать в окне браузера, и он поддерживается практически любым клиентом. Это полностью без сохранения состояния - без сеансов
wsHttpBinding - это способ работы SOAP, но для этого, вероятно, требуется написать собственный клиент или опубликовать API-интерфейс SOAP - но это определенно менее поддерживается и имеет более высокую кривую обучения попасть в. Однако wsHttpBinding поддерживает сеансы.
Аутентификация будет большой проблемой - сохраняете ли вы этих пользователей в базе данных членства ASP.NET, или у вас есть собственное хранилище пользователей, или вы хотите добавить их в качестве учетных записей пользователей в Active Directory (если у вас есть такой зверь)?