Del via


Portalgodkendelse (Dynamics CRM 2015)

 

Udgivet: november 2016

Gælder for: Dynamics CRM 2015

Microsoft-konto tillader brugere at blive godkendt på dit websted uden at skulle oprette dine egne sikkerhedsudbydere. Dette emne viser, hvordan du kan bruge Microsoft-konto-godkendelse med dit websted ved hjælp af udviklerudvidelser for Microsoft Dynamics CRM 2015 og portalens værktøjssæt.

Dette emne indeholder

Registrere dit websted med Microsoft-konto

Tilføje kontrolelementet LiveIdLoginStatus

Tilføje medlemskabsudbyderen og handlerservicen

Gennemtvinge registrering

Registrere dit websted med Microsoft-konto

Til en start skal du registrere dit websted med Microsoft-konto:

https://account.live.com/developers/applications

Når du registrerer dit websted, skal du angive dit fulde domænenavn, eksempelvis "yoursite.yourdomain.com", ikke kun "yourdomain.com".

Du skal også angive en URL-adresse, der dirigerer Microsoft-konto -anmodninger tilbage, når de er færdig med at logge på. Dette bliver til din håndteringservice, som du kan læse mere om senere i dette dokument, men som standard skal du angive URL-adressen:

http://yoursite.yourdomain.com/liveid.axd. 

Når du har registreret dit websted, får du et program-id og en hemmelighed, du skal bruge til at tilslutte din web.config, så webstedet kan være koblet op til Microsoft-konto.

Her er nogle ting at bemærke:

Dit domænenavne må ikke indeholde strenge som localhost, 127.0.0.1 eller noget med ordet "live" i.

Du kan ikke dele styringen af webstedet med andre brugere.

Du kan ikke ændre dit domænenavn, når du har registreret det.

Tilføje kontrolelementet LiveIdLoginStatus

Det sidste trin er at tilføje kontrolelementet LiveIdLoginStatus, der virker ligesom kontrolelementet LoginStatus. Det viser et logonlink til brugere, der ikke er godkendt, og et logoutlink til brugere, der er godkendt.

Hvis anonym fører linket brugeren til Windows Live eller eventuelt (ved hjælp af Loginhref) til en bestemt landingsside, så brugerne kan se, at de skal til Windows Live.

Efter godkendelsen nulstiller logoutlinket den aktuelle brugers identitet til at være en anonym bruger.

<crm:LiveIdLoginStatus runat="server" /> 

Det antages, at "crm"-kodepræfikset er blevet registreret til "Microsoft.Xrm.Portal.Web.UI.WebControls".

Tilføje medlemskabsudbyderen og handlerservicen

Medlemskabsudbyderen håndterer brugerlogonoplysninger. Brug af Microsoft-konto kræver brug af Microsoft-konto-medlemskabsudbyderen:

<membership defaultProvider="CrmMembershipProvider">
    <providers>
        <add name="CrmMembershipProvider" type="Microsoft.Xrm.Portal.Web.Security.LiveIdMembershipProvider, Microsoft.Xrm.Portal" liveIdConnectionStringName="Live"/>
    </providers>
</membership>

Handlerservicen kontrollerer, om den godkendte bruger er blevet registreret på dit websted. Hvis du kører et IIS (Internet Information Services) 7-websted i integreret tilstand, skal du sikre, at følgende tilføjes i dit <handlers>-afsnit:

<add name="LiveId" verb="*" path="LiveID.axd" preCondition="integratedMode" type="Microsoft.Xrm.Portal.Web.Handlers.LiveIdWebAuthenticationHandler, Microsoft.Xrm.Portal" />

Hvis du kører i tilstanden Klassisk pipeline eller IIS6, er handlerservicen konfigureret i afsnittet <httpHandlers> af din Web.config-fil.

<add verb="*" path="LiveID.axd" type="Microsoft.Xrm.Portal.Web.Handlers.LiveIdWebAuthenticationHandler, Microsoft.Xrm.Portal"/>

Gennemtvinge registrering

Når du bruger Microsoft-konto til godkendelse, er kun det entydige Passport-id (PUID) kendt. Hvis du vil have yderligere oplysninger om brugeren (f.eks. et vist navn eller mail), skal du indsamle dem fra brugeren. Dette kan gøres på to typiske måder:

  • Opret en side, hvor de kan udfylde deres oplysninger efter eget valg, når de er logget på.

  • Indhent oplysninger, før de kan godkendes på dit websted.

For at bruge den anden metode skal din Microsoft-konto-installation have særbehandling.

  1. Som en del af en brugerregistrering skal Microsoft Dynamics 365 kende PUID for brugeren, så det kan sammenkæde det med brugerens Microsoft Dynamics 365-kontaktoplysninger. Med andre ord skal du få brugeren til at logge på ved hjælp af Microsoft-konto og derefter sende brugeren til registreringssiden. Dette gøres ved at tilføje RegistrationUrl-attributten på LiveIdLoginStatus-kontrolelementet.

    <crm:LiveIdLoginStatus runat="server" RegistrationUrl="/CreateUser" /> 
    
  2. I koden bag din registreringsside skal du tilføje kode for at beholde Microsoft-konto-token og oprette den nye bruger, når du har indsamlet de ønskede oplysninger.

    protected void Page_Load(object sender, EventArgs e)
    {
      if (InvitationCode == null || InvitedContact == null)
      {
        var page = SiteContext.Current.Website.GetPageBySiteMarkerName("Home");
        Response.Redirect(page.GetUrl());
      }
    
      // Add the Live ID variables that come from the authentication handler to hidden 
      // script variables.
      if (Request["live-id-action"] == "register")
      {
        Page.ClientScript.RegisterHiddenField("live-id-token", 
          Request["live-id- token"]);
        Page.ClientScript.RegisterHiddenField("live-id-action", 
          Request["live-id-action"]);
      }
    }
    

Se også

Vejledning til portaludvikling til Microsoft Dynamics CRM 2015
Forberede portaludvikling (Dynamics CRM 2015)
ASP.NET-webformularer og databinding
Administrere portalindhold (Dynamics CRM 2015)
Portalgennemgange til Dynamics CRM 2015

© 2017 Microsoft. Alle rettigheder forbeholdes. Ophavsret