Microsoft CRM 2011 How to Configure IFD Hosted Setup

Screenshot 2014-07-05 15.44.06Like many, we have struggled to configure Microsoft CRM 2011 as an Internet Facing Deployment. There is quite a bit of disjointed and some what typical Microsoft “junk” on how to set this up.

So after reading the White Papers, blogs and YouTube videos on the topic, I figured I would need notes for myself as much as anything. This is mostly because I am yet to find one single example that covered the setup I was after. That being:

Single Server

On an existing domain

Running true IFD ready for customer access.

The last point it telling, as all the Microsoft examples give a self generated SSL cert, that really is an example of a DEV environment only. We want to test the “real deal”, and don’t mind spending a few $ on a real Certificate to see this in a true working environment.

If you need support upgrading Microsoft CRM 4.0 to CRM 2011 or CRM 2013, then contact InteractiveWebs CRM team.

The Existing Setup

Because this is a test environment, we are running the server on a Hyper V server. A single VM machine, that is running a fully patched version of:

  • Windows 2008 R2 SP1 64 Bit
  • SQL 2008 R2 64 Bit
  • Microsoft CRM 2011 64 Bit

Interesting enough, something that always takes me 15 min, it ensuring I download the correct version of the ISO files from MSDN. I get it that I am somewhat lame, but if you get a wrong version you can waste a load of time and energy later.

image

With a list looking like this it can be painful. Anyway, these are the files we used for install:

image

For those who care, the VM was set to run with 6000 MB ram, and fold out to use more.

image

Importantly

When we setup CRM, we selected the option to NOT use the default website, but configure a new one with the default settings of port 5555. This is necessary as you will see later.

 

Backup First

In all things Microsoft world, it is vital what you establish a working point to avoid unnecessarily installing things all over again. To get things working we have started fresh over 4 times.

Hyper V is great for this, as we just stopped the server, and made a copy of the VHD file. Then when it is time to start all over, it is just a matter of restoring from copy/backup.

 

Test First

Test that your CRM setup is working. Go to the local computer name (ours is VSERVER08) on the correct port: http://vserver08:5555

We called our Deployment of CRM – “CRM2011” So the URL redirects to: http://vserver08:5555/CRM2011/main.aspx

and after being prompted for login, we are in and testing.

image

Apply a Wildcard SSL Certificate

In CRM, the accessing of deployments is handled by the sub domains. So if we call a deployment “business1” we will access that as:  https://business1.domain.com

For testing, we purchased a standard Wildcard SSL certificate that applied that to the IIS7 server.

We will let you work out that bundle of joy, but a few tips.

1. Godaddy was about as cheap as you find on the net.

2. Setup involves creating a certificate request from within IIS, then pasting that text into the online providers order system. They then generate the certificates that you then import back into IIS and the server.

3.

Application for a certificate

Here, I will be a wildcard certificate, for example, describes how to create a certificate:

1) Open IIS Manager

2) Click the server name in the main screen double click Server Certificates

3) In the right panel, click Create Certificate Request…

image

4) fill in the following diagram each column, click Next

image

5) Cryptographic Service Provider Properties page to keep the default, click Next.

6) In the File Name page, enter C: \ req.txt , and then click Finish.

7) Run cmd , run

certreq-submit -attrib “CertificateTemplate: WebServer” C: \ req.txt

8) Select the CA , click OK.

9) the certificate is stored as C: \ Wildcard.cer . ( 7-9 can also be in the CA to complete)

10) back to the IIS Manager, click No. 3)  Step graph Complete Certificate Request …

11) Select the C: \ Wildcard.cer , Friendly name named *. contoso.com , of course, you can take a different name.

12) Click OK.

13) so that we completed the wildcard certificate request.

 

Additional SSL Certificate Imports

1) RUN MMC at the start / search

2) Select File / Add Remove Snapin – Select Certificates – ADD

image

Computer Account

image NEXT / Finish

3) Expand the first two folders, and Right Click on the Certificates Folder and select: All Tasks /  Import.

4) Browse to your wildcard SSL certificate file, and import that into the Personal and Trusted Root Certification Authorities.

image

 

Ensure that you

 

Binding site for the default SSL certificate

1) Open IIS Manager.

2) In the Connections panel, expand Sites , click Default Web Site.

3) In the Actions pane, click Bindings.

image

4) In the Site Bindings dialog box, click Add.

5) Type select HTTPS.

6) SSL Certificate , select the certificate you just created *. contoso.com , and then click OK.

image Ours is interactivewebs.com

7) Click Close.

8) Repeat for the Personal certificate folder.

 

For the CRM 2011 binding site SSL certificate

1) Open IIS Manager.

2) In the Connections panel, expand Sites , click CRM Web Site.

3) In the Actions pane, click Bindings.

4) In the Site Bindings dialog box, click Add.

5) Type select HTTPS.

6) SSL Certificate , select the certificate you just created *. contoso.com .

7) Port to select a different 443 (e.g. 444 ) and port number, and then click OK

8) Click Close.

 

DNS configuration

For MS CRM 2011 configuration Claims-based authentication, you need the DNS to add some records to make CRM 2011 for each breakpoint can be resolved correctly.

There are two ways you can achieve the desired result. But first lets understand the desired result.

  1. We make the assumption that your server is running at least one static IP address.
  2. Because this is Internet Facing, that IP needs to be accessible to the world.
  3. That same IP can be used for access to your server both internally on the matching we are playing with, and externally form anyone on the net.
Lets Get Basic

Start a Command Prompt, and work out what your IP address of the server is.

Click START > RUN > CMD

Type IPCONFIG – Enter

Under the name: IPv4 Address is a number that looks like: 66.34.204.220

image

That is Your IP Address of the Server.

The DNS Goal

Make sure that when you PING xxx.domain.com that it points to that IP address. Both for the world and for you when you do that on your server.

(xxx is the sub domain that we are about to configure.)

To configure CRM, we need some sub domains to point to the server IP.

  1. sts.domain.com
  2. auth.domain.com
  3. dev.domain.com
  4. Your ORG name.  org.domain.com (Where ORG is the CRM deployment name of your organization or organizations), e.g.

image

We have two setup here: CRM and CRM2011. So we need to configure crm.interactivewebs.com and crm2011.interactivewebs.com.

Hosting Your Own DNS

If you host your own Domain Name Server (DNS) and you host the domain name that you are using to setup IFD. Then configuring an A record for the above mentioned sub domains is easy.

START > Administrative Tools > DNS

Find your Domain Name

Right Click and select NEW HOST A

image

image

Add an A record that points to your servers IP address.

Repeat this process for all of the above mentioned sub domains. auth, sts1, dev, and your own organization names.

Test DNS

You must be able to ping all of those names and get the correct server IP address. Both from computers on the internet, and from the server.

Note: If you have added the DNS records, but still encounter name resolution problems, you can try running on the client ipconfig / flushdns to clean up the cache. You can also click the DNS server root and click CLEAR CACHE so that the server is responding with the latest updates.

image

Note: Don’t bother proceeding past this step if you cannot ping your sub domains internally and externally correctly.

 

Firewall configuration

You need to set the firewall to allow the CRM 2011 and the AD FS 2.0 port used by the incoming data stream. HTTPS (SSL) is the default port 443.

For Initial setup testing etc. We recommend just turning the thing off. Better start from a place where it does not muck you around, then turn it all back on after you are successful.

image

 

Configuration Claim-based authentication internal access

Configure the internal access Claim-based authentication requires the following steps:

  • Install and configure AD FS 2.0 .
  • Set Claims-based authentication configuration CRM 2011 server.
  • Set the Claims-based authentication configuration AD FS 2.0 server.
  • Test claims-based authentication within the access.

Install and configure AD FS 2.0

CRM 2011 with a variety of STS provider ( STS Provider ) together. This article uses Active Directory Federation Services (AD FS) 2.0 to provide a security token service (security token service ).

Note: AD FS 2.0 will be installed to the default site, so install AD FS 2.0 , you must have CRM 2011 installation in the new site. (Remember we said that earlier)

IIS Looks like this if it is correctly installed: image

If you only see the default website with CRM installed in that. Start AGAIN!

 

Download the AD FS 2.0

From the following link to download the AD FS 2.0

Active Directory Federation Services 2.0 RTW( http://go.microsoft.com/fwlink/?LinkID=204237 ).

 

Install AD FS 2.0

In the installation wizard, select the federation server role installed, for more information refer to

Install the AD FS 2.0 Software( http://go.microsoft.com/fwlink/?LinkId=192792 ).

Configure AD FS 2.0

1 in the AD FS 2.0 server, click Start , then click AD FS 2.0 Management .

2 In the AD FS 2.0 Management page , click AD FS 2.0 Federation Server Configuration Wizard .

image

3 In the Welcome page , select Create a new Federation Service , and then click Next.

image

4 In the Select Deployment Type page , select Stand-alone Federation Server , and then click Next.

image

5 Choose your SSL certificate (the choice of a certificate created *. contoso.com ) ,add a Federation Service name ( for example , sts1.contoso.com), and then click Next.

image

Note: Only you as the AD FS 2.0 sites when using the wildcard certificate, only need to add the Federation Service name.

6 Summary page, click Next.

image

7 Click Close to close the AD FS 2.0 Configuration Wizard.

image

Note: If you have not added ( sts1.contoso.com ) to add DNS records, then do it now.

 

Verify the AD FS 2.0 is working

Follow the steps below to verify that the AD FS 2.0 is working :

1 Open Internet Explorer.

2 Enter the federation metadata of the URL , for example:

https://sts1.contoso.com/federationmetadata/2007-06/federationmetadata.xml

3. to ensure that no certificate associated with the warning appears.

image

 

Claims-based authentication configuration CRM 2011server

After you install and configure the AD FS 2.0 , we need to configure the Claims-based authentication before setting CRM 2011 binding types ( Binding type ) and the root domain (root Domains) .

According to the following steps to set up CRM 2011 bound for the HTTPS and configure the root domain address :

1 Open the CRM Deployment Manager.

2 In the Actions pane , click Properties .

image

3 Click the Web Address page .

4 In the Binding Type , select HTTPS .

5. Ensure that the network address for the binding CRM 2011 site SSL certificate and SSL ports. Because you configured for internal access to Claims-based authentication, so the address of the host for the root domain name. Port number must IIS in CRM 2011 is set in the port the same site.

6 For example, *. contoso.com wildcard certificate, you can useinternalcrm.contoso.com: 444 as the network address.

image

7 Click OK .

Note: If the CRM Outlook client configuration using the old binding value, then the need to be updated to use the new value. + Make sure you have a DNS entry for: internalcrm.

From the CRM 2011 is passed to the AD FS 2.0 of Claims data you need to use the Claims-Based Authentication Configuration Wizard (described below) specified in the certificate for encryption. Therefore, CRM Web application CRMAppPool account must have read the certificate’s private key encryption ( Read ) permissions.According to the following steps to give this permission:

1 in CRM 2011 server , run the Microsoft Management Console (Start => Run MMC).

2 Click Files => Add / Remove Snap-in …

3 left panel, select Certificates , click Add to add to the right panel.

4 In the pop-up window, select Computer account .

5 next page, select Local Computer , click Finish .

6 Click OK .

7 Expand the Certificates ( Local Computer ) => Personal, select Certificates .

8. In the middle panel, right-click you will be in the Claims-Based Authentication Configuration Wizard to specify the encryption certificate (in this case *. contoso.com ), click All Tasks => Manage Private Keys.

9 Click Add , add CRMAppPool account (if you are using Network Service , select the account directly), and then give Read permissions.

image

Note: You can use IIS Manager to view CRMAppPool what account to use. In the Connections panel , click Application Pools , and then see CRMAppPool under Identity .

image

10 Click OK .

 

Configure Claims-Based Authentication

Below, we setup Claims-Based Authentication Configuration Wizard ( Configure Claims-Based Authentication Wizard ) to configure the Claims-Based Authentication. To learn how PowerShell to configure Claims-Based Authentication, refer to the English original.

1) Open the Deployment Manager.

2) on the left navigation panel, right-click Microsoft Dynamics CRM , and then click Configure Claims-Based Authentication.

image

3) click Next.

image

4) In the Specify the security token service page , enter the Federation metadata URL, such as

https://sts1.interactivewebs.com/federationmetadata/2007-06/federationmetadata.xml

image

Note: The data is usually in the AD FS 2.0 website. Can this URL copied into IE to seeFederation metadata , to ensure that this is the correct URL . Using IE to access the URL can not have a certificate-related warnings (Ignore that crap!)

image

5) Click Next .

6) In the Specify the encryption certificate page , click on Select…

7) select a certificate, where we choose *.interactivewebs.com.

image

image

8) This certificate is used to encrypt the transmitted AD FS 2.0 authentication security token service security token.

Note: Microsoft Dynamics CRM service account must have the private key encryption certificate Read permission.

10 Click Next . Claims-Based Authentication Configuration Wizard validates the token and certificate you specified.

image

11 In the System Checks page, if the test passed, click Next .

12 In the Review your selections and then click Apply page , just to confirm the input, and then click Apply .

image

13. On this page, note which of the URL , because then, you will use this URL to add a trusted party ( Relying Party ) to the security token service.

image

image

14 IMPORTANT – Click View Log File

15 Scroll to the end, and Copy the URL from the bottom of the file.

image– This will be used in the next configuration. Note that this is different to the URL used in step 4 above, as it represents the internal URL. Subtle but vital (and the cause of frustration the first 10 times we tried this).

16 Click Finish.

17 Validate that you can browse to the URL above. If you cannot view this in a browser, then have a look again at your permissions on the certificate in relation to the account on the application pool in IIS for CRM. Read above: Claims-based authentication configuration CRM 2011server.

18. Once you can browse this URL, you are done here.

 

Claims-based authentication configuration AD FS 2.0server

After completion of the previous step, the next step we need AD FS 2.0 to add and configure the statement provider trust ( claims Provider trusts ) and the relying party trust ( Relying Party trusts ).

Configure claims provider trusts

You need to add a claims rule come from Active Directory to obtain user ‘s UPN (user principal name) and then as a UPN delivered to MS CRM . Follow these steps to configure the AD FS 2.0 to UPN LDAP attribute as a claim is sent to the relying party ( Relying Party ):

1 installed in the AD FS 2.0 on the server , open AD FS 2.0 Management.

2 In the Navigation Pane , expand the Trust Relationships , and then click the Claims Provider Trusts.

3 In the Claims Provider Trusts under , right-click Active Directory , and then click Edit Claims Rules.

image

4 in the Rules Editor , click Add Rule.

image

5. In Claim rule template list , select the Send LDAP Attributes as Claims template ,and then click Next.

image

6 Create the following rule:

  • Claim rule name: UPN Claim Rule ( or other descriptive name )

· Add the following mapping:

  • Attribute Store: Active Directory
  • LDAP Attribute: User Principal Name
  • Outgoing Claim Type: UPN image

7 Click Finish , then click OK close the Rules Editor.

 

Configuration relying party trusts

In the open claims-based authentication, you must ensure CRM 2011 server configured as a relying party to use from the AD FS 2.0 statement to internal access claims certification.

1 Open AD FS 2.0 Management.

2 In the Actions menu, click Add Relying Party Trust.

image

3 In the Add Relying Party Trust Wizard , click Start.

image

4 In the Select Data Source page , click Import Data about the Relying Party Online or published on a local Network , enter the positioning federation metadata.xml file URL.

image

Federation metadata is set Claims when created. Use Claims-Based Authentication Configuration Wizard. The URL used here is IMPORTANT – Read point 14 in the above section. It is the URL retrieved from the VIEW LOG FILE That we did when  from configuration of Claims Based Authentication:  In this case

image

https://internalcrm.interactivewebs.com:444/FederationMetadata/2007-06/FederationMetadata.xml

Note: Ensure that no certificate-related warnings appear when hitting the URL.

5 Click Next .

6 In the Specify Display Name page , enter a display name, such as CRM Claims Relying Party , and then click Next.

image

7 In the Choose Issuance Authorization Rules page , choose Permit All users to access this Relying Party , and then click Next.

image

8 In the Ready to Add Trust page , click Next , then click Close .

9. When the Rule Editor appears , click Add Rule . Otherwise , the Relying Party Trusts list , right-click you create a relying party objects, click the Edit Claims Rules , and then click Add Rule.

image

10. In Claim rule template list , select the Pass Through or Filter an Incoming Claim template, and then click Next.

image

11 create the following rule:

· Claim rule name: Pass Through UPN ( or other descriptive name )

· Add the following mapping:

  • Incoming claim type: UPN
  • Pass through All claim values

image

12 Click Finish .

13 In the Rule Editor , click Add Rule , in Claim rule template list , select the Pass Through or Filter an Incoming Claim template , and then click Next :

· Claim rule name: Pass Through Primary SID ( or other descriptive name )

· Add the following mapping:

  •      Incoming claim type: Primary SID
  •      Pass through All claim values

image

14 Click Finish .

15 In the Rule Editor , click Add Rule

16. In Claim rule template list , select the Transform an Incoming Claim template , and then click Next.

image

17 create the following rule:

· Claim rule name: Transform Windows Account Name to Name ( or other descriptive name )

  • Incoming claim type: Windows account name
  • Outgoing claim type: Name
  • Pass through All claim values

image

18 Click Finish , to create a good three rule later , click OK close the Rule Editor

image

 

 

Test claims-based authentication within the access

You should now be able to use the claims certified to the internal access CRM 2011 a

1 Open the Deployment Manager.

2 Expand the Deployment Manager node , and then click on Organizations .

3 Right-click your organization , and then click Browse . so you can open the CRM web page of ( for example: https://internalcrm.contoso.com:444 ).

image

Trouble Shooting

If the CRM web page can not be displayed, then run the following iisreset and then try again.

image

If the CRM web page still does not show, then you may need to setup AD FS 2.0 server setup a SPN (Service Principal Name) . Re-run the Claims-Based Authentication Wizard, and then browse to the Specify the security token service page, note the AD FS 2.0 server in the Federation metadata URL in the name. (In this case sts1.interactivewebs.com )

http://blogs.msdn.com/b/crm/archive/2009/08/06/configuring-service-principal-names.aspx

image

1 Open a command line tool .

2 Enter the following command : ( application, in your own environment, substitute the name of the name of the command line )

c: \> setspn -a http/sts1.interactivewebs.com fserver4\VSERVER08$

fserver4\VSERVER08 = the domain and machine name of the server.

image

c: \> iisreset

3 and then re-access the Microsoft Dynamics CRM Server 2011 site, so you should be able to successfully access to the CRM 2011 Web page.

http://technet.microsoft.com/en-us/library/gg188614.aspx

If you receive ADFS – sts1 errors.

There was a problem accessing the site. Try to browse to the site again.
If the problem persists, contact the administrator of this site and provide the reference number to identify the problem.
Reference number: xxx

And or if you look in your log files under ADFS 2.0 You will see errors like this.

image

In our case, this was because we used the external Metadata URL and not the Internal URL that we should have copied from the “View Log File” When configuring the Claims Based Authentication. Step 14 in the section above.

image

image

Note the difference between this:

https://internalcrm.interactivewebs.com:444/FederationMetadata/2007-06/FederationMetadata.xml

and the original meta data check we did with:

https://sts1.interactivewebs.com/federationmetadata/2007-06/federationmetadata.xml

We incorrectly figured it would be pulling the same XML data. It does NOT!

 

Configuration Claim-based authentication external access

Open to the CRM 2011 Data Claims-based authentication of external access, you need to do the following steps:

1 complete contents of the previous section: Configuring Claim-based authentication- internal access.

2 for the IFD configuration CRM 2011 server.

3 for the IFD configuration AD FS 2.0 server.

4 Test claims-based authentication external access.

The IFD configuration CRM 2011 server

When opening Claims certified internal access, you can open by IFD external claims visited. The following describes using the IFD Configuration Wizard to configure, if you want to learn how to use PowerShell to be configured, refer to the English original.

1 Open the Deployment Manager.

2 In the tree structure , right-click Microsoft Dynamics CRM , and then click Configure Internet-Facing Deployment.

image

3 Click Next.

image

4 Fill in the correct domain information for the Web Application, Org, and Discovery Web services. Remembering here that in our case: *.interactivewebs.com was the name of the wildcard certificate used, and that PORT 444 was the port we configured for the CRM Web Instance in the bindings for IIS.

Thus we use:

  • Web Application Server Domain: interactivewebs.com:444
  • Organization Web Service Domain: interactivewebs.com:444
  • Web Service Discovery Domain: dev.interactivewebs.com:444 image

Note – Enter the domain name, rather than the server name .

  • If the CRM installed on the same server or servers are installed in the same domain, then the Web Application Server Domain and Organization Web Service Domain should be the same .
  • Web Service Discovery Domain must be a Web Application Server Domain as a subdomain like the  “dev.” that we setup in DNS earlier.
  • domain name must be on the SSL certificate name

Domain examples :

  • Web Application Server Domain: contoso.com: 444
  • Organization Web Service Domain: contoso.com: 444
  • Web Service Discovery Domain: dev.contoso.com: 444

For more information on the website, please refer to Install Microsoft Dynamics CRM Server 2011 on multiple computers( http://go.microsoft.com/fwlink/?LinkID=199532 )

5 In the Enter the external domain where your Internet-facing servers are located input box , enter for your internet to CRM 2011 server located outside the domain of information, and then click Next .

image

You must specify the domain specified in the previous step Web Application Server Domain sub-domains . default , will be “auth.” added to the Web Application Server Domain before.

Domain examples :

  • External Domain: auth.contoso.com: 444

6 In the System Checks page , if there is no problem, click Next.

image

7 In Review your selections and then click Apply page , confirm your input , and then click Apply.

image

8 Click Finish .

image

9. Open a command line tool, run: iisreset

 

The IFD configuration AD FS 2.0 server

To open CRM 2011 on the IFD , you need to add AD FS 2.0 server for the IFD to create a relying party endpoints. Follow these steps:

1 open AD FS 2.0 Management .

2 In the Actions menu, click Add Relying Party Trust.

image

3 In the Add Relying Party Trust Wizard , click Start .

4 In the Select Data Source page , click Import Data about the Relying Party Online or published on a local Network , enter the positioning federation metadata.xml file URL.

Note – This is almost the same URL as we used previously, but has the .auth sub domain that we used in point 4 above. For use the Federation metadata is configured IFD when created. In this case https://auth.interactivewebs.com:444/FederationMetadata/2007-06/FederationMetadata.xml .

Check in your browser the URL, to ensure that no certificate-related warnings appear.

image

5 Click Next.

6 In the Specify Display Name page , enter the display name , such as CRM IFD Relying Party , and then click Next.

image

7 In the Choose Issuance Authorization Rules page , select the Permit all users to access this relying party options , and then click Next.

image

8 In the Ready to Add Trust page , click Next , then click Close .

9. If the Rule Editor appears , click Add Rule. Otherwise , the Relying Party Trusts list ,right-click you create a relying party objects, click the Edit Claims Rules, and then click Add Rule.

image

10. In Claim rule template list , select the Pass Through or Filter an Incoming Claim template, and then click Next.

image

11 create the following rule:

· Claim rule name: Pass Through UPN ( or other descriptive name )

· Add the following mapping:

  •     Incoming claim type: UPN
  •     Pass through All claim values image

12 Click Finish .

13 In the Rule Editor , click Add Rule , in Claim rule template list , select the Pass Through or Filter an Incoming Claim template , and then click Next :

· Claim rule name: Pass Through Primary SID ( or other descriptive name )

· Add the following mapping:

  •     Incoming claim type: Primary SID
  •     Pass through All claim values image

14 Click Finish .

15 in the Rules Editor , click Add Rule ,

16. In Claim rule template list , select the Transform an Incoming Claim template , and then click Next .

17 create the following rule:

· Claim rule name: Transform Windows Account Name to Name ( or other descriptive name )

  •     Incoming claim type: Windows account name
  •     Outgoing claim type: Name
  •     Pass through All claim values

 

18 Click Finish , you have created three rule later , climageick OK close the Rule Editor .

Test claims-based authentication to access external

Now, you should use the claims certified external access CRM 2011 a. In IE the browser CRM 2011 external address (for example: https://org.contoso.com:444 ), you will see the following pages:

Enter the user name password, log CRM 2011.

 

Final Notes

An additional log cleanup step here.

Like anything Microsoft, this was not easy. It took us over 10 attempts drawing on over a dozen resources to get this worked out. For us, the main tripping points related the the meta data URL’s used in configuring the endpoints. Our fault, but it also appears to be a common error to other administrators on the net.

To Microsoft – you documentation sucks badly! If I never read another White Paper it will be too soon!

Thanks to – Jackie Chen (Chen Pan) Your blog was GOLD!

Also Look at these Updates

Look for our other posts on Email Router Configurations. “is a fickle bitch!”

AD FS certificate rollover CRM 2011

CRM 2011 Rollup 10 Invalid Argument Error

212 thoughts on “Microsoft CRM 2011 How to Configure IFD Hosted Setup

  1. Pingback: InteractiveWebs Blog » CRM 2011 IFD Multi-Tenency Migration Tips

    • We likely will at some time, although we are not rushing into the connection with CRM and Sharepoint. Mostly due the the fact that historically Sharepoint has really let us down in this integration suite. It’s not a web portal, it’s not a great web data store (or not as good as custom S3 solutions). So we ended up building out our own Web portal, integration with DotNetNuke. http://www.interactivewebs.com/crm/InteractiveWebsCRM.aspx

      Bottom line… I know we will have to setup a Sharepoint in the next month or two, so you will probably see it appear then.

  2. Hi, I’ve a question at that point:

    I’ve created new DNS, called

    “The new DNS records, of which type they are? New Host, new alias, etc there are several types… thanks


    …In the forward lookup zone created after the domain name to create the following DNS records:

    · AD FS 2.0 server ( for example: sts1.contoso.com)

    * external IFD access address – Microsoft Dynamics CRM IFD Federation Endpoint (for
    …”

    • The outcome is that you need to be able to ping:

      sts1.domain.com
      dev.domain.com
      auth.domain.com
      yourorg.domain.com

      (See the updated DNS Notes – domain.com being your chosen domain name.) If you domain name is hosted some place, and has a DNS management tool, you can just configure these (A) records there. If you have not setup DNS servers to manage your own domain, for internal and external hosting, you may well need some assistance with that from someone who understands DNS management. (We can do that at a charge if you are desperate use our contact us form on http://www.interactivewebs.com)

      Make sure though that the outcomes as per the article are achieved before trying to move on.

  3. Pingback: InteractiveWebs Blog » CRM 2011 Email Router Problems–She’s a Fickle Bitch

  4. I’m at the step 14 of “Claims-based authentication configuration CRM 2011server”
    The final form with the click possibility on log file doesn’t appear, the snap in crashes:

    Type is not resolved for member ‘Microsoft.Crm.CrmException,Microsoft.Crm, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35’.

    at Microsoft.ManagementConsole.Internal.IMessageClient.ProcessRequest(Request request)
    at Microsoft.ManagementConsole.Executive.RequestStatus.BeginRequest(IMessageClient messageClient, RequestInfo requestInfo)
    at Microsoft.ManagementConsole.Executive.SnapInRequestOperation.ProcessRequest()
    at Microsoft.ManagementConsole.Executive.Operation.OnThreadTransfer(SimpleOperationCallback callback)

    Anyhow, it seems that Claims-based authentication configuration was setup, because I’ve now a disable menu item. Someone else had this problem?

    PS: Thanks for the DNS Update!!!

  5. Brilliant guide thank you! Please check step 11 the incoming claim type states UPN however the image displays name.

    11 create the following rule:

    · Claim rule name: Pass Through UPN ( or other descriptive name )

    · Add the following mapping:

    Ø Incoming claim type: UPN

    Dan Evans

  6. I stuck still now at AD FS 2.0:
    URL https://sts1.contoso.com/federationmetadata/2007-06/federationmetadata.xml doesn’t show any XML, but wants to downoad the file. When I want to download, I get an error can not download.

    https://internalcrm.:444/FederationMetadata/2007-06/FederationMetadata.xml works as expected. Any idea?


    Verify the AD FS 2.0 is working
    Follow the steps below to verify that the AD FS 2.0 is working :

    1 Open Internet Explorer.

    2 Enter the federation metadata of the URL , for example:

    https://sts1.contoso.com/federationmetadata/2007-06/federationmetadata.xml

    • Could be just your browser on that one. Think that IE should display the XML without issue. Are you using IE, and if so, is there any error on the browser or in the server log files?

  7. Great post, was easy to follow but have a question. I have a SBS 2003 server and a CRM server that runs CRM 2011/ADFS 2.0, the SBS 2003 server already uses port 443 for OWA externally. I would like to use port 444 for ADFS

    If I set the port 444 in the IIS default web site on the CRM server as the https binding, it does not resolve itself correctly. Instead of being reachable by “https://localhost”, you need to put in “https://localhost:445”. This screws up the ADFS/IFD installation later on.

    I have successfully set up CRM/ADFS 2.0 on the CRM server before using port 443 and being able to access it externally by changing the https port in the router to the CRM server ip address. Of course this means OWA on the SBS 2003 server no longer works exernally.

    Do you have any ideas? Thanks

    • You can have two port 443 certificates bound to the same default website, so long as you use a host header for the second bind. Then you can add host headers as needed to bind the subsequent addresses to the correct certificate.

      In other words, I think you should be able to use port 443 and 444 as we said in the article, just doing host header defined instances for the ADFS. However we have not tested this.

  8. hi,

    on “Configuration relying party trusts”, you have specified a note like,
    Note: Ensure that no certificate-related warnings appear when hitting the URL.

    But i am getting this kind of warning, and in fact because of that only i am getting an error while trying to import federation metadata address on step #4 of “Configuration relying party trusts”

    Secondly, I am using the self-signed certificate and following your steps. I hope it will do in that certificate too.

    Awaiting your reply!

  9. hi,

    thanks for the response. I would like to create the wildcard certificate, while running your below command , I am facing an error specifiying Ldap, the system cannot find the file specified.

    certreq-submit -attrib “CertificateTemplate: WebServer” C: \ req.txt

    I need to create the wildcard certificate because i am stuck on step #4 of “The IFD configuration AD FS 2.0 server”

    In my case the auth URL is giving certificate warnning. Its really urgent!!

  10. Hey I am not getting the alters for your responses here on this blog though i have specified my email address. If possible then could you please share your mail id or instat messenger ID from where you could help me out to resolve this issue. I am also having the Godaddy certificate too.

  11. Hi,

    I have a weird error here.
    I have added the dns for auth.consoto.com and sts1.contoso.com

    I can ping both of them from another PC.
    But when i’m on the server, I can only ping auth.contoso.com. sts1.contoso.com doesn’t respond.

    I can retreive the federationmetadata.xml from my other PC, but not from the server (So I can’t finish to configure the Claims-Based Authentification)

    Any ideas about this error?

    PS: Thank you for this tutorial it’s very useful

    To Ankit > you typed it correctly? In the tutorial there is a misprint (there is a space between certreq and -submit) Like this

    certreq -submit -attrib “CertificateTemplate: WebServer” C: \ req.txt

    For me it worked fine with this.

    • Actually this is likely a DNS cache.

      If you try to hit a sub-domain / URL – i.e. anyhting.domain.com and that does not have a valid record, the DNS server returns nothing.

      Then when you create a DNS record, and ping it, DNS server says… Nup still got nothing. – Due to the fact that MS is not bright enough to update cache when you create records.

      Solution
      Reboot both CRM server and DNS Server.
      or
      Flush DNS cache / the run from CMD – “ipconfig /flushdns” on the CRM server.

  12. I wish it had been that simple.

    Actually I had some old parameters in C:\Windows\System32\drivers\etc\hosts

    So now it’s fixed 😀 Thank you anyways,

  13. hi,

    On final step of ADFS 2.0 IFD configuration, i am getting an error like
    “Error message: MSIS7612: Each party on relying trust must be unique across all relying party trusts in ADFS 2.0”

    I don’t know why i am getting such error. Please help me out to resove this.

  14. Hi,

    I have followed the guide step by step, but at step 14 of Configure claims based authentication, i view the log and test the URL for the federationmetadata. It returns a 503 error and says the service is unavailable. However, when i run the URL as:

    https://internalcrm.contoso.com/FederationMetadata/2007-06/FederationMetadata.xml

    (the only difference is that i have taken the :444 port out)

    it runs perfectly fine, without certificate errors. Will this affect the steps in the guide later on if i use this URL instead of the one given in the log?

    I have also looked at the permissions for the certificate which is set as ‘read’ for the CRMAppPool for identity NetworkService. Don’t know if i’m going wrong somewhere with these permissions?

    Thanks for the help in advance.

    Stuart

    • Hard to say, but that makes me think it is something in IIS.

      Perhaps the website is stopped,

      Perhaps the bindings has an error or is bound to the wrong IP address?

      I would be looking for something in IIS that is stopping you hitting the correct URL through the setup you have.

  15. I have browsed the web to see if there were any ideas or sollutions, and i have tried uninstalling the URLRewrite module and re-installing. I have also looked for errors using –

    cmd : NETSH HTTP SHOW URLACL

    None of this has helped. On anther note the URL page that i can run (without the :444 port) says : entityID=”http://sts1.contoso.com/adfs/services/trust” this is the same entityID as the sts.contoso.com/federation../..

    Is this suppose to be the case?

    Thanks

  16. hi,

    Thanks for the reply. Can you clear some of my below queries?

    1. Is HTTPS is requird for IFD?
    2. Can I configure the IFD for CRM 2011 with windows authentication?
    3. Can I configure the IFD without performing the Claim based authentication steps for internal access of above post?

    • 1 Yes
      2 No
      2 No

      ha… you sound like you want:
      1. This to be easy.
      2. You to decide how people access your site (crm, after all it is just a web site).
      3. To save time and money.

      Did you forget that 10 different companies working under the banner of Microsoft have all had a chef in the kitchen and a finger in the pie! It’s no wonder this is harder than it needs to be.

  17. Installing ADFS/IFD is a real struggle. I will start from scratch again and follow your guide. One question, though. I want CRM on port 443 so the people accessing it don’t need to enter port numbers. That means ADFS needs to go on something like 444. So under step “Binding site for the default SSL certificate” can I just switch from 443 to 444 and the installation for ADFS will work fine? Or do I need to leave it at 443 and change it to 444 after the installation of ADFS?

    And one more question as I am not familiar with SSL. Can I just create an ‘internal’ wildcard certificate first and once I decide to get the real one I just update the CRM and ADFS web site or would there be other steps involved?

    • The theory would be yes.

      I have recently (through this blog) been put onto startssl.com. While it is a struggle to jump through all their hoops, it is in effect a free SSL service. So of price is the issue, I suggest you check them out.

  18. Hi again,

    I managed to fix my previous issue by getting in touch with MS support. The problem was that the self signed wildcard certificate that i created was not a domain certificate, and due to my set up this is what was needed.

    My IFD is now correctly configured, however I cannot access CRM using the external URL from an external machine, is this related to the certificate being self-signed or should i still be able to use this certificate to access CRM externally?

    Thanks

  19. Hi,
    Your indepth guide is by far the best ive seen whilst spending hours searching. Thanks for your efforts.

    Would you be able to tell me if you’ve tried this setup in a hosted environment. So our network remains at our offices, but i want to host our dynamics installation at a data centre.

    Is the only way to achieve this to have AD replicate to the hosted server and have the clients network and data centre server linked via vpn or can i use adfs2 to authenticate the users another way?

    I would ideally like to have the dynamics installation pick up ad and exchange over the internet, rather than have the server onsite if that makes sense.

    • This setup blog, was setup on a hosted environment. Technically it does not make a lot of difference if your AD is in the same data center as your IFD / CRM. It is only going to add a little time at the initial validation point to the process. Once validated, your don’t keep talking to AD any more.

      Pending firewall issues etc, it should work fine.

  20. I have 2 servers :
    1. AD + Exchange with IIS.
    2. CRM2011 + SQL +SSRS with CRM installed on default website.
    IDo I need to install everything (describe in you blog) , in the CRM server or I can install ADFS on the AD server ? what will be different on the procces in this case ?

  21. Pingback: InteractiveWebs Blog » CRM 2011 XRM Performance Problem IIS Dynamic Compression

  22. Pingback: InteractiveWebs Blog » Your session in Microsoft Dynamics CRM is about to expire. CRM 2011 Extend Session Time

  23. Pingback: Microsoft CRM 2011 How to Configure IFD Hosted Setup -Kevin's Mocha

  24. Thank you so much…this is awesome!

    I still can’t believe how f*&$ing difficult Microsoft has made this. I half suspect they did this to push more people to CRM Online.

  25. Excellent Stuff!

    I took down cheat sheets and screenshots to post something similar but never got around to it due to workload and lack of sleep!
    I see that you accomplished my goal with the extra manpower and great documentation.
    A great reference point for all, definitely the best on the web!
    I eventually got my deployment done, but with many a late night and a PSS call!
    One thing that may also help people is that they can update the metadatu url’s through the ADFS interface, this is where i got stuck!

    My comments were the last on the MS Blog before yours which I went back to today to look for updates on the subject.
    I have now been tasked to setup IFD for a multi-tenant CRM 2011 hosted solution – multiple customers into a IFD CRM 2011 server farm and guess what – no info available from MSFT!
    The big question here is: Will there will be a single external url to access the IFD/ADFS site for ALL customers and based on the UPN they will get re-directed to the relevant CRM company Site?

    • Looking at how MS do the multi customer solution is not so inspiring. Depending on how large you are, it is really just best to pick the single domain reference point and work with that till load dictates you break it down into subdomains. At least that is what MS appear to have done, using sub domains for world regions and presumably data centres. Anyway, that is how we do it.

  26. Awesome blog post. You have gone to a lot of effort and it is greatly appreciated.

    I have luckily avoided having to set this up for a customer but if I do at least you have given me a bit of a head start

  27. Hello and thank you for this detailed overview.

    I am a little confused in the beginning. In the section “Apply a Wildcard SSL Certificate” you start off writing “We will let you work out that bundle of joy, but a few tips.” Then go through the requestiing and applying of a certifcate.

    1. Does this process require installation of both a personal ssl certificate and a public certificate? Which certificate should be installed in the Personal and Trusted Root Certification Authorities. The directions on GoDaddy site is to install the GD certificate into the Intermediate Certification Authorities section.

    2. It seems like the process is to use an internal/personal certificate for internal facing and use the GoDaddy certificate for external/IFD? Is this correct? If that is the case, which certicates should be bound to the Default Web Site and the CRM Website?

  28. Sorry, another question. I am at the step for “Test Claims-based authentication with the access. I cna browser to my site, however, I get a Windows login prompt. If I enter my userid/pw then CRM loads.

    1. Is this correct? I would think that accessing the URL internally should check my credentials and pass a token without me needing to login via windows logon prompt.

    I get no errors in event viewer.

    2. I did have to run the setspn command to get it to work.

    3. I actually don’t care about internal access, as all users will be outside the domain and accessing CRM externally. So do I need to fix this?

    4. Any ideas on where I should look for problems?

  29. “If you host your own Domain Name Server (DNS) and you host the domain name that you are using to setup IFD. Then configuring an A record for the above mentioned sub domains is easy.”

    What if not? 🙂
    Do I have to create a second DNS forward zone (besides mydom.local) for mydom.com? That would mean to “replicate” every HOST/CNAME currently existing in external DNS and keep both up to date.
    The Claims Based Auth whitepaper does mention a “Subject Alternative Name” certificate. Would that kind of cert do the trick (and replacing any internalcrm.contoso.com with internalcrm.contoso.local)?

    Thank you!

    • I’m kind of confused at that? The point of IFD is for it to be external facing, not an internal thing. For internal connections you can probably fudge it with the Windows HOST record, but you will not be able to get authenticated certificate on a domain name that is .local. That would need to be handled by a self signed cert.

      Probably easier to register a domain for like $11 a year or less and use the services of the registration services to setup DNS services that are then going to fit into the model we have described.

  30. Pingback: CRM 2011 – Articles, documents and videos on setting up IFD for Microsoft Dynamics CRM 2011 | Metaphorix

  31. Pingback: CRM 2011 – Articles, documents and videos on setting up IFD for Microsoft Dynamics CRM 2011 « Hosk's Dynamic CRM 2011 Blog

  32. Great article, first one I found that actually got me up and running in a few hours after spending weeks trying to figure this out.

  33. Hi,

    Thanks for providing such a detailed insight of the installing and configuration process!

    I’m trying to configure “Claims-Based Authentication in Dynamics CRM 2011”.
    During the system checks, CRM Deployment Manager throws the below error
    “The federation metadata URL is not available”

    I tried to access the federation metadata URL and was able to access the .xml file without any issue.

    Kindly help me with a solution.

    Thanks,
    Kruba

    • You can get this is the URL is protected with an unsigned certificate. One way to test this is to go to another computer, and hit the URL, and check that the HTTPS path does not throw a certificate error.

      Also, you should be sure that the post is specified in the path, so that the return is running on the correct port.

  34. @InteractiveWebs

    Thanks for your reply!

    I tried to hit the URL from another computer; though I was able to access the .xml file, the browser threw a certificate error.

    Can you kindly let me know, whether there are any free Certificate Issuing Authorities? And will the certificate error get resolved if I can get a certificate from them?

    Thanks,
    Kruba

  35. Hi. Thanks for this good posting.
    In addition I wonder if someone is used to do this behind a firewall with port mapping.
    I have the problem, that 443 is already used on the external domain and we will have to come through a different port. This seems to be pretty straight forward, but what else has to be mapped form external point of view?
    We map e.g. 40400 to 444 for crm like contoso.com, but then it seems that also the sts1 site will have to be reachable from outside. It provides the login page when I am right.
    So I will need a mapping from 40401 to 443. Right?
    But how to tell this the IFD configuration? So that it will use the external port 40401?
    I hope you all got my point and can give me some hints.
    Kind regards
    Alex

  36. Hi, Great article! But I am confuse, i have few question here.

    1. How if I want to implement ADFS and CRM with seperate server for IFD? I’ve read Microsoft guide did mentioned the following.
    “Note: Setting the port number to a port other than 443 is not needed if your AD FS server and your Microsoft Dynamics CRM Server 2011 are separate servers.”

    2. Which IP should I point to if my ADFS and CRM are seperate server?
    sts.domain.com > CRM or ADFS ???????
    auth.domain.com > CRM or ADFS ????
    dev.domain.com > CRM or ADFS

    3. If i register a public cert. can i just register under *.domain.com ? Or sts, auth, dev each subdomain require dedicated certficate?

    Sorry that I’m really noob with ADFS.. appreaciate someone can help me with a guide.. thanks in advanced!!!

    • 1. Actually the ports don’t matter a whole lot, which is why they say “another port” Typically 444 is used, bur really the important thing is not 443.
      2. sts = ADFS
      auth=ADFS (from memory)
      dev.= CRM
      3. *.domain.com is ok, and I think we mentioned this in our post, but should be fine.

      Don’t feel bad that Microsoft make this hard. It is a reflection on them not you! They like to build little clubs of acronym dropping “tossers” who have experienced pain before you have. They call these people server administrators… (alas I am in the club)

  37. Pingback: Dynamics CRM 2011 : Claims and IFD | Laurent Bel's blogging

  38. Hi
    Great article and thank you.
    I’ve one question, Is it possible to have one url htts://crm.domain.com and when user login CRM will redirect user to default organzation?
    I don’t want to use org.domain.com as url if it is possible!

    • If you are suggesting this for a multi-tenant setup (more than one org) then I think the answer is no. If you would like to use a URL redirect for one instance to one org, then that could be done with an IIS redirect or a web page that redirects. Then end URL will be the crm.domain.com though.

  39. To Microsoft – you documentation sucks badly! If I never read another White Paper it will be too soon!

    I am kind of new at this so I thought I was just having a hard time following along, but the more I learn and the more I read and the more products I learn to install and configure, like SharePoint and CRM, the more I think that there really isnt one single person who really knows how to install or configure any of these products. There are mistakes all through the code and the instructions…maybe they should make it all open source and let the people sort it all out..? That’s what ends up happening in the end anyway. When you read the instructions and nothing works, we all end up doing an internet search for a post like the one above from someone, or usually a combination of some extremely smart people who have cracked the mystery of how to install these products.

    The good part is that once they are up and running, we have some of the best tools available. But the more I learn, the more worried I am getting that there is total confusion at the other end of all this code..?

    Thanks alot for your post here. Every step worked perfectly!

    • Thanks for the Kudos. I totally agree with your comments. My BIG BIG suggestion is that for first time Administrators. Do it all on virtual machines, with restore points before each step. Don’t accept failure / hacks to make things work, but do it step by step getting it all correct. Basically the MS stuff will work way more reliably when you do this. I would have done around 10 complete start overs to get things all humming nicely.

  40. Pingback: URL Rewriting for user-friendly URLs with Dynamics CRM 2011 « sides of march

Leave a Reply