2010-05-31 1 views
1

У меня есть клиентское приложение, которое вызывает вызовы для службы WCF. Это приложение находится на общедоступном компьютере, который легко доступен, и каждый может легко скопировать .EXE и .CONFIG моего приложения на другой компьютер и начать его использовать.Шаблон для проверки подлинности запроса к службе WCF

Есть ли шаблон, где я могу проверить, поступает ли запрос только из приложения на компьютере, на котором я его установил, а не на том, на котором он был скопирован?

Заранее спасибо.

EDIT: Я думал об использовании MAC-адреса компьютера, но не уверен, насколько надежным/легко взломанным будет. Это финансовый продукт, поэтому аутентификация должна быть очень плотной.

ответ

2

Вы можете, например. определите список действительных IP-адресов, на которых вы установили свой материал, а затем примените фильтр IP, чтобы разрешать только вызовы с этих разрешенных IP-адресов.

См:

+0

Для моего случая ИПС не будет исправлена, как компьютеры, они установлены на будут располагаться офисы с использованием широкополосного доступа. Любые другие предложения? – Fung

+1

@Fung: не очень - помимо IP, на самом деле вы не можете проверить. Другим вариантом было бы иметь цифровой сертификат, установленный на тех ПК, который должен быть авторизован, и проверить этот сертификат при совершении вызова. –

+0

+1, сертификат машины - лучший вариант. @fung может генерировать их, и они могут быть частью любого процесса установки, поэтому, если кто-то просто захватывает двоичные файлы, у них не будет сертификата. Лучше всего вы можете использовать сертификат для шифрования сообщений WCF. – slugster