Tak dużo osób ma problem z poprawną konfiguracją IFD, że postanowiłem ją wreszcie opisać. Dodatkowo postaram się wytłumaczyć w tym poście co jest czym w konfiguracji CRM’a przez internet. Mam nadzieję, że się przyda.
Co to jest IFD?
IFD (Internet Facing Deployment) to nowy (pojawił się w wersji 4.0) model instalacji i konfiguracji Dynamics CRM 4.0. W tym modelu nie jest używana domyślna autentykacja domenowa (Windows Integrated), ale autentykacja oparta o formularze (Forms authentication). Scenariusz IFD stosuje się wtedy, kiedy do CRM użytkownicy chcą dostawać się przez internet, bez połączeń VPN.
Czym różni się wdrożenie z IFD od tego bez IFD?
Przede wszystkim Dynamics CRM 4.0 skonfigurowany jako Internet Facing Deployment (IFD) dostępny będzie dla użytkowników, którzy są poza domeną, w której jest zainstalowany CRM. CRM skonfigurowany jako IFD cechuje się następującymi zmianami:
- plik web.config zawiera informację o rodzaju autentykacji typu ServiceProviderLicenseAgreement oraz informację o szyfrowaniu klucza (dla CrmTicket authentication)
- rejestr na serwerze jest zmieniony i aktualizowany jest klucz IfdInternalNetworkAddress mówiący o tym, dla których użytkowników ma być używany który rodzaj autentykacji (tak naprawdę dla jakich adresów)
- tabela DeploymentProperties ma uzupełnione 3 nowe wartości zawierające dane o zewnętrznym adresie CRM
Jak poprawnie skonfigurować IFD?
Jeszcze niecałe 2 lata temu konfiguracja IFD opierała się o dostarczanie instalatorowi albo CRM’owi odpowiednich plików XML. Teraz całą konfigurację IFD można wykonać za pomocą narzędzia z graficznym interfejsem. Narzędzie, o którym mowa to CRM 4 IFD Tool dostępne tutaj: http://download.microsoft.com/download/4/e/f/4ef5f568-7320-4861-a947-47baf0966537/crm40ifdtool.zip.
- Po uruchomieniu CRM 4 IFD Tool na serwerze wybieramy typ autentykacji na IFD + On Premise:
- Pod spodem wpisujemy adresy i maski podsiecie, z których użytkownicy mają logować się „wewnętrznie”, tzn poprzez „normalne” logowanie domenowe:
- W okienkach dotyczących IFD wpisujemy zewnętrzny adres CRM’a. Wpisujemy tu tylko domenę i ewentualnie port, bez nazwy organizacji! CRM odpowiednio doda nazwę organizacji w ramach domeny, którą wpiszemy. Oczywiście nie muszę chyba dodawać, że zalecany jest HTTPS…
- Uzupełniamy wewnętrzny adres CRM’a (adres zostanie automatycznie wczytany z ustawień CRM’a):
- Aplikujemy zmiany w IFD Tool („File” / „Apply changes”) i od tej pory mamy CRM’a, do którego użytkownicy dostający się z wewnątrz sieci będą się autentykować domenowo, a pozostali użytkownicy poprzez Forms’y.
Pamiętajcie o DNS’ach, otwarciu odpowiednich portów, a w przypadku SSL’a także o certyfikatach, żeby nie wkurzać użytkowników monitami o niepoprawnych certyfikatach…