Del via


Bruge server til server-godkendelse for flere lejere

 

Udgivet: januar 2017

Gælder for: Dynamics 365 (online)

Dette er det mest almindelige scenarie og det, der bruges til apps, som er distribueret ved hjælp af Microsoft AppSource, men du kan også bruge flere lejeren uden at registrere programmet for Microsoft AppSource.

Hver Dynamics 365 (online)-organisation er knyttet til en Azure Active Directory (Azure AD)-lejer. Dit webprogram eller din webtjeneste registreres sammen med din egen Azure AD-lejer.

I dette scenario kan enhver Dynamics 365 (online)-lejer potentielt bruge dit program med flere lejere, når de har givet samtykke til, at programmet kan få adgang til dataene.

Dette emne indeholder

Krav

Oversigt: Udvikle og teste programmet

Oprette en programbruger, der er knyttet til det registrerede program i Dynamics 365

Teste dit program ved hjælp af din Dynamics 365-lejer

Teste dit program ved hjælp af en separat Dynamics 365-lejer

Forberede en metode til at installere programbrugeren

Krav

Hvis du vil oprette og teste et program med flere lejere, som bruger server til server-godkendelse (S2S), har du brug for:

  • En Azure AD-lejer, som du vil bruge til at udgive dit program eller din tjeneste.

  • 2 Dynamics 365 (online)-abonnementer

    • Et skal være tilknyttet den Azure AD-lejer, som du vil bruge til at udgive dit program eller din tjeneste.

    • Det andet kan være et prøveabonnement, der skal bruges til test af, hvordan en abonnent får adgang til dit program.

Oversigt: Udvikle og teste programmet

Det program, du vil oprette, skal være registreret med den Azure AD-lejer, du vil bruge, når du udgiver programmet.

På et højt niveau består processen af:

  1. Opret et webprogram med flere lejere, som registreres sammen med din Azure AD-lejer.

  2. Oprette en programbruger, der er knyttet til det registrerede program i din Dynamics 365 (online)-lejer

  3. Oprette en brugerdefineret sikkerhedsrolle og tildele den til programbrugeren i din Dynamics 365 (online)-lejer

  4. Teste dit program ved hjælp af din Dynamics 365 (online)-lejer

  5. Teste dit program ved hjælp af en separat Dynamics 365 (online)-lejer

Du kan finde et komplet eksempel på denne proces under Gennemgang: Server til server-godkendelse for flere lejere.

Oprette et webprogram med flere lejere, som registreres sammen med din Azure AD-lejer

Du opretter et webprogram eller en webtjeneste med flere lejere, der bruger Azure AD som godkendelsesudbyder.

Præcis, hvordan du gør dette, er ikke fokus for dette emne. Der findes en række metoder til at håndtere dette og vælge, hvad der passer til dine behov og præferencer. Se følgende links for at få flere oplysninger og eksempler:

Azure AD kræver følgende værdier for at registrere dit program:

Værdi

Beskrivelse

URI for program-id

Id'et for et program. Denne værdi sendes til Azure AD under godkendelsen for at angive, hvilket program den kaldende ønsker et token for. Denne værdi er desuden inkluderet i tokenet, så programmet ved, at det var det tilsigtede mål.

URL-adresse for svar og URI for omdirigering

I tilfælde af en Web-API eller et webprogram, er URL-adressen for svar den placering, som Azure AD vil sende godkendelsessvaret til, herunder et token, hvis godkendelsen lykkedes.

Klient-id

Id'et for et program, der genereres af Azure AD, når programmet registreres. Ved anmodning om en godkendelseskode eller et token, sendes klient-id'et og -nøglen til Azure AD under godkendelsen.

Nøgle

Den nøgle, der sendes sammen med en klient-id til Azure AD under godkendelsen for at kalde en Web-API.

Når programmet er registreret, tildeles det et Objekt-id for Azure Active Directory, et entydigt id for det registrerede program.

Hvis du opretter et nyt ASP.NET MVC-program med Visual Studio 2015, skal du angive indstillinger, så programmet understøtter funktionalitet med flere lejere. Skabelonen til et MVC-program giver mulighed for at angive, hvilken type godkendelse der forekommer. Du får mulighed for at vælge godkendelsesmetoden ved at konfigurere egenskaberne for projektet, når du opretter det. I følgende diagram vises de tilgængelige indstillinger:

ASP.NET MVC Change Authentication Dialog

Når du konfigurerer et projekt med disse indstillinger, konfigureres det til at bruge OWIN-middleware og -scaffolding til et grundlæggende program, der understøtter dette scenarie. Med nogle grundlæggende ændringer kan det tilpasses til at arbejde sammen med Dynamics 365 (online). Dette er den metode, der er vist i Gennemgang: Server til server-godkendelse for flere lejere.

Under oprettelsen og registreringen af dit program med henblik på udviklingsprocessen, vil du sandsynligvis bruge https://localhost som værdierne for URL-adresse til logon og URL-adresse til svar, så du kan teste og foretage fejlfinding af dit program lokalt inden udgivelsen. Du skal ændre disse værdier, før du udgiver din app.

Når du registrerer din app skal du oprette en nøgle, også kaldet en ClientSecret. Disse nøgler kan konfigureres til en varighed på 1 eller 2 år. Som vært for programmet, skal du behandle denne værdi som en adgangskode, det er dit ansvar at administrere fornyelse af nøglerne, før de udløber. Du vil muligvis bruge Azure Key Vault.Flere oplysninger:https://azure.microsoft.com/en-us/services/key-vault/

Give dit program rettigheder til at få adgang til Dynamics 365 (online)-data

Dette er grunden til, hvorfor din Dynamics 365 (online)-forekomst knyttes til din Azure AD-lejer. Hvis din Azure AD-lejer ikke er knyttet til en Dynamics 365 (online)-lejer, vil du ikke kunne udføre følgende trin.

  1. Gå til https://portal.azure.com , og vælg Azure Active Directory.

  2. Klik på Appregistreringer , og find det program, du har oprettet ved hjælp af Visual Studio.

  3. Du skal give dit program rettigheder til at få adgang til Dynamics 365 (online)-data. I området API-adgang skal du klikke på Krævede tilladelser. Du bør kunne se, at det allerede har rettigheder til Windows Azure Active Directory.

  4. Klik på Tilføj og derefter Vælg en API. Vælg Dynamics 365 på listen, og klik derefter på knappen Vælg.

  5. Under Vælg tilladelser skal du vælge Få adgang til Dynamics 365 som organisationsbrugere. Klik derefter på knappen Vælg.

  6. Klik på Udført for at tilføje disse tilladelser. Når du er færdig, skal du kunne se de anvendte tilladelser.

    Grant Dynamics 365-Permissions to application

Oprette en programbruger, der er knyttet til det registrerede program i Dynamics 365

Når programmet får adgang til Dynamics 365-dataene for en af programmets abonnenter, skal der være en programbruger i abonnentens Dynamics 365-organisation. Som enhver Dynamics 365-bruger, skal denne programbruger være tilknyttet mindst én sikkerhedsrolle, der definerer de data, som brugeren har adgang til.

Objektet systemuser har tre nye attributter til at gemme disse data.

Skemanavn

Vist navn

Skriv

Beskrivelse

ApplicationId

Program-id

UniqueidentifierType

Id'et for programmet. Det bruges til at få adgang til data i et andet program.

ApplicationIdUri

URI for program-id

StringType

Den URI, der bruges som et entydigt logisk id for den eksterne app. Det kan bruges til at validere programmet.

AzureActiveDirectoryObjectId

Objekt-id for Azure AD

UniqueidentifierType

Dette er objekt-id'et for programmappen.

Egenskabsværdien systemuserAzureActiveDirectoryObjectId skal være en reference til objekt-id'et for Azure Active Directory for det registrerede program. Denne reference angives Dynamics 365, når programbrugeren oprettes ud fra ApplicationId-værdien.

Bemærk

Når du først gang udvikler dit program med din egen Dynamics 365- lejer og den Azure AD-lejer der er tilknyttet, kan du blot oprette programbrugeren, fordi det registrerede program allerede er en del af din Azure AD-lejer.

Hvis du vil oprette programbrugeren i en anden organisation med henblik på test, eller når en abonnent skal bruge programmet, skal de først give samtykke til dit program, så trinnene i processen er forskellige. Du kan finde flere oplysninger under Teste dit program ved hjælp af en separat Dynamics 365-lejer.

Oprette en sikkerhedsrolle til programbrugeren

I næste trin skal du oprette en Dynamics 365-programbruger. Privilegier og rettigheder for denne bruger defineres af den brugerdefinerede sikkerhedsrolle, du angiver. Før du opretter programbrugeren, skal du oprette en brugerdefineret sikkerhedsrolle, så du kan knytte brugeren til den. Flere oplysninger: TechNet: Oprette eller redigere en sikkerhedsrolle.

Bemærk

Programbrugeren kan ikke knyttes til en af standardsikkerhedsrollerne i Dynamics 365. Du skal oprette en brugerdefineret sikkerhedsrolle for at knytte den til programbrugeren.

Oprette en Dynamics 365-programbruger manuelt

Fremgangsmåden for oprettele af denne bruger er forskellig fra oprettelsen af en licenseret bruger. Brug følgende trin:

  1. Gå til Indstillinger > Sikkerhed > Brugere.

  2. Vælg Aktiverede brugere på rullelisten i visningen.

  3. Klik på Ny. Kontroller, at du bruger formularen Programbruger.

    Hvis du ikke kan se felterne Program-id, URI for program-id og Objekt-id for Azure AD i formularen, skal du vælge formularen Programbruger på listen:

    Select Application User Form

  4. Tilføj de relevante værdier til felterne:

    Felt

    Værdi

    Program-id

    Den værdi for program-id'et, der er registreret sammen med Azure AD.

    Fulde navn

    Navnet på programmet.

    Primær e-mail

    Den mailadresse, som abonnenterne skal bruge, hvis de vil kontakte dig.

    Felterne Brugernavn, URI for program-id og Objekt-id for Azure AD er låste, og du kan ikke angive værdier for disse felter.

    Når du opretter og gemmer denne bruger, hentes værdierne for disse felter fra Azure AD ud fra værdien for Program-id.

  5. Knyt programbrugeren til den brugerdefinerede sikkerhedsrolle, du oprettede under Oprette en sikkerhedsrolle til programbrugeren. Flere oplysninger: TechNet: Tildele en sikkerhedsrolle til en bruger

Teste dit program ved hjælp af din Dynamics 365-lejer

Da programmet er blevet registreret med din Azure AD-lejer, og programbrugeren i din udviklingsorganisation allerede er konfigureret, kan du fortsætte med at udvikle programmet i forhold til din egen Dynamics 365-lejer. Men dette er ikke en gyldig test af funktionerne for flere lejere. Du skal teste programmet på en separat Dynamics 365-lejer.

Teste dit program ved hjælp af en separat Dynamics 365-lejer

Før du tester programmet med en separat Dynamics 365-lejer, skal en administrator for Azure AD-lejeren give sit samtykke til programmet. Administratoren giver sit samtykke ved at navigere til programmet i en browser. Første gang de åbner programmet, vises en dialog som denne:

Grant consent to access Dynamics 365 data

Når de giver samtykke, føjes dit registrerede program til listen over Azure AD Enterprise-programmer, og det er tilgængeligt for brugerne af Azure AD-lejeren.

Kun når en administrator har givet samtykke, skal du oprette programbrugeren i abonnentens Dynamics 365-lejer. Du kan oprette programbrugeren manuelt ved hjælp af den fremgangsmåde, der er beskrevet i Oprette en Dynamics 365-programbruger manuelt.

For de første tests kan du udføre disse trin manuelt. Når du er klar til at gøre programmet eller tjenesten tilgængelig for abonnenter, vil du have brug for en mere effektiv procedure. Dette omtales i næste afsnit.

Forberede en metode til at installere programbrugeren

Når abonnenter har givet samtykke til dit program eller din tjeneste, har du brug for en nem og pålidelig metode til at tilføje programbrugeren og andre nødvendige komponenter til deres Dynamics 365-organisation.

Du skal inkludere en brugerdefineret sikkerhedsrolle, som definerer, hvilke rettigheder programmet kræver, og derefter kontrollere, at programbrugeren er tilknyttet den brugerdefinerede sikkerhedsrolle. Eftersom en brugerdefineret sikkerhedsrolle kan inkluderes i en løsning, skal du forberede en administreret løsning, der indeholder definitionen af den brugerdefinerede sikkerhedsrolle og eventuelle andre løsningskomponenter, som dit program kræver.

Du kan finde oplysninger om oprettelse af brugerdefinerede sikkerhedsroller under

Du kan finde oplysninger om oprettelse af en Dynamics 365-løsning i følgende emner:

Programbrugeren kan dog ikke inkluderes i en løsning, så du skal angive en metode til at oprette programbrugeren og knytte denne til den brugerdefinerede sikkerhedsrolle.

Der er flere metoder til at opnå dette, herunder skrive dit eget program ved hjælp af Microsoft Dynamics 365-SDK og få abonnenten til at køre programmet.

Microsoft Dynamics 365-SDK indeholder et CRM-pakkeimplementationsværktøj-program, der kan bruges til at forberede en pakke til automatisering af overførsel af løsninger og data til en anden Dynamics 365-organisation.Flere oplysninger:Oprette pakker til Dynamics 365 Package Deployer

Se også

Gennemgang: Server til server-godkendelse for flere lejere
Bruge enkelt-lejer server til server-godkendelse
Opbygge webprogrammer ved hjælp af Server til server-godkendelse (S2S)
Opret forbindelse til Microsoft Dynamics 365

Microsoft Dynamics 365

© 2017 Microsoft. Alle rettigheder forbeholdes. Ophavsret