none
Wie können OData Queries bei "CRM2011 OnPremise" statt per "http://servername/..." über "https://dnsname/..." aufgerufen werden? RRS feed

  • Frage

  • Hallo,

    ich habe eine Frage zur Ermittlung des REST Endpoint bei CRM-Aufruf per https statt http und DNS-Name statt Server-Name:

    Aufbau ODataPath ...
    var context = Xrm.Page.context;
    var serverUrl = context.getServerUrl(); // Liefert z.B. URL  http://crmserver/Organisationsname
    OData Aufrufe funktionieren einwandfrei.

    Was muss beachtet werden, wenn der CRM2011-Aufruf per "https:/dnsname/Organisationsname" erfolgen soll.
    Es kommt eine Meldung, dass der Zugriff verweigert wird, identisch wie beim Aufruf "http://localhost/Organisationsname"

    Was muss bei der Konfiguration des IIS und sonstiger Komponenten berücksichtigt werden, damit der Aufruf funktioniert?
    Für eine Beschreibung der notwendigen Schritte wäre ich dankbar.

    Stephan




    Montag, 1. August 2011 23:29

Antworten

  • Dein Problem ist wahrscheinlich dass ihr einen DNS-Alias definiert habt, mit dem ihr das CRM aufruft (dnsname). Ich vermute, ihr habt diesen noch nicht im CRM gepflegt (Bereitstellungsmanager -> Eigenschaften -> Internetadresse).

    Das sind die Adressen, die das CRM z.B. über den Discoveryservice oder auch über context.getServerUrl() zurückgibt. 

    Die Meldung "Zugriff verweigert" kommt vom Browser, da https://dnsname != http://crmserver... ist. Das sind im JavaScript-Sicherheitsmodell unterschiedliche Domänen (Cross Site) und wird im Standard nicht erlaubt um CSS (Cross Site Scripting) zu verhindern. 

    EDIT-------------

    Siehe auch http://myencounterwithcrm.wordpress.com/2011/05/24/crm-2011-alternative-to-context-getserverurl/


    My Blog | Microsoft Dynamics CRM proposal on stackexchange
    • Als Antwort vorgeschlagen ckeller Donnerstag, 6. Oktober 2011 10:11
    • Als Antwort markiert Stephan Schulte Donnerstag, 6. Oktober 2011 11:56
    • Bearbeitet ckeller Samstag, 8. Oktober 2011 19:47
    Mittwoch, 5. Oktober 2011 10:23
  • Hallo Stephan,

    klicke mal mit der rechten Maustaste links oben auf "Microsoft Dynamics CRM", dann auf "Eigenschaften". Dann bekommst du einen Dialog, in dem du die Webadresse eingeben bzw. auf HTTPS umstellen kannst.

    Viele Grüße,
    Jürgen


    Jürgen Beck

    Dipl. Kfm./Wirtschaftsinformatik
    MVP, MCSD.NET, MCITP DBA, MCDBA, MCSE
    Microsoft Certified Business Management Solutions Professional
    Microsoft Certified CRM Developer
    Microsoft Certified Trainer

    ComBeck IT Services & Business Solutions
    Microsoft Gold Certified Partner
    Microsoft Small Business Specialist

    Developing & Supporting Business Applications from small business to big enterprises covering scores of sectors

    http://www.combeck.de
    Donnerstag, 6. Oktober 2011 09:14
    Moderator

Alle Antworten

  • Hallo zusammen,

    ist das Thema so exotisch oder gibt es niemanden, der per REST Endpoint über https zugreift?

    Ich freue mich über jeden Hinweis.

    Beste Grüße,

    Stephan Schulte

    Samstag, 17. September 2011 00:33
  • Ich freue mich über jeden Hinweis.

    --------------------------------------------------------------------------

    article présenter


    Samstag, 17. September 2011 09:35
  • Hallo Stephan,

    spontan hätte ich gesagt, dass du darauf achten musst, dass generell die CRM-Webanwendung per SSL aufgerufen wird. Dann gibt auch getServerUrl() das richtige Ergebnis mit der HTTPS-Adresse zurück und die Authentifizierung sollte funktionieren.

    Oder übersehe ich da etwas?

    Viele Grüße,
    Jürgen


    Jürgen Beck

    Dipl. Kfm./Wirtschaftsinformatik
    MVP, MCSD.NET, MCITP DBA, MCDBA, MCSE
    Microsoft Certified Business Management Solutions Professional
    Microsoft Certified CRM Developer
    Microsoft Certified Trainer

    ComBeck IT Services & Business Solutions
    Microsoft Gold Certified Partner
    Microsoft Small Business Specialist

    Developing & Supporting Business Applications from small business to big enterprises covering scores of sectors

    http://www.combeck.de
    Montag, 26. September 2011 13:20
    Moderator
  • Hallo Jürgen,

    gerade der Aufruf per SSL funktioniert ja nicht:

    'Was muss beachtet werden, wenn der CRM2011-Aufruf per https://dnsname erfolgen soll.
    Es kommt eine Meldung, dass der Zugriff verweigert wird, identisch wie beim Aufruf "http://localhost/Organisationsname"'
    /Organisationsname

    Viele Grüße,
    Stephan

    Mittwoch, 5. Oktober 2011 09:50
  • Dein Problem ist wahrscheinlich dass ihr einen DNS-Alias definiert habt, mit dem ihr das CRM aufruft (dnsname). Ich vermute, ihr habt diesen noch nicht im CRM gepflegt (Bereitstellungsmanager -> Eigenschaften -> Internetadresse).

    Das sind die Adressen, die das CRM z.B. über den Discoveryservice oder auch über context.getServerUrl() zurückgibt. 

    Die Meldung "Zugriff verweigert" kommt vom Browser, da https://dnsname != http://crmserver... ist. Das sind im JavaScript-Sicherheitsmodell unterschiedliche Domänen (Cross Site) und wird im Standard nicht erlaubt um CSS (Cross Site Scripting) zu verhindern. 

    EDIT-------------

    Siehe auch http://myencounterwithcrm.wordpress.com/2011/05/24/crm-2011-alternative-to-context-getserverurl/


    My Blog | Microsoft Dynamics CRM proposal on stackexchange
    • Als Antwort vorgeschlagen ckeller Donnerstag, 6. Oktober 2011 10:11
    • Als Antwort markiert Stephan Schulte Donnerstag, 6. Oktober 2011 11:56
    • Bearbeitet ckeller Samstag, 8. Oktober 2011 19:47
    Mittwoch, 5. Oktober 2011 10:23
  • Rufst du den IE direkt auf dem Server auf? Dann musst du den IE im Administratormodus aufrufen.

    Viele Grüße,
    Jürgen


    Jürgen Beck

    Dipl. Kfm./Wirtschaftsinformatik
    MVP, MCSD.NET, MCITP DBA, MCDBA, MCSE
    Microsoft Certified Business Management Solutions Professional
    Microsoft Certified CRM Developer
    Microsoft Certified Trainer

    ComBeck IT Services & Business Solutions
    Microsoft Gold Certified Partner
    Microsoft Small Business Specialist

    Developing & Supporting Business Applications from small business to big enterprises covering scores of sectors

    http://www.combeck.de
    Mittwoch, 5. Oktober 2011 11:10
    Moderator
  • Hallo,

    im CRM-Bereitstellungsmanager zu CRM2011 finde unter Eigenschaften der Organisation keine Möglichkkeit zur Eingabe der Internetadresse. Was mache ich falsch?

     

    Donnerstag, 6. Oktober 2011 07:45
  • Hallo Stephan,

    klicke mal mit der rechten Maustaste links oben auf "Microsoft Dynamics CRM", dann auf "Eigenschaften". Dann bekommst du einen Dialog, in dem du die Webadresse eingeben bzw. auf HTTPS umstellen kannst.

    Viele Grüße,
    Jürgen


    Jürgen Beck

    Dipl. Kfm./Wirtschaftsinformatik
    MVP, MCSD.NET, MCITP DBA, MCDBA, MCSE
    Microsoft Certified Business Management Solutions Professional
    Microsoft Certified CRM Developer
    Microsoft Certified Trainer

    ComBeck IT Services & Business Solutions
    Microsoft Gold Certified Partner
    Microsoft Small Business Specialist

    Developing & Supporting Business Applications from small business to big enterprises covering scores of sectors

    http://www.combeck.de
    Donnerstag, 6. Oktober 2011 09:14
    Moderator
  • Hallo Jürgen,

    Aha-Effekt! Das hilft schon mal weiter. Ich prüfe in den nächsten Tagen ob es am fehlenden DNS-Alias-Namen liegt. Vorerst besten Dank.

    Beste Grüße,
    Stephan

    Donnerstag, 6. Oktober 2011 11:54