Dela via


Anvisningar: Skapa min första anspråksmedvetna ASP.NET-tjänst med ACS

Uppdaterad: 19 juni 2015

Gäller för: Azure

Gäller för

  • Microsoft Azure Active Directory Access Control (kallas även Access Control Service eller ACS)

Översikt

Anteckning

Det här avsnittet handlar om en äldre teknik. Information om hur du skapar XML-webbtjänster och XML-webbtjänstklienter finns i https://go.microsoft.com/fwlink/?LinkID=220304.

I det här avsnittet beskrivs hur du integrerar en enkel ASP.NET webbtjänst med ACS. Genom att integrera webbtjänsten med ACS tar du med funktionerna i autentisering och auktorisering ur koden. ACS tillhandahåller mekanismen för att autentisera och auktorisera klienter till din webbtjänst. Mer information finns i Webbtjänster och ACS

I ett webbtjänstscenario förutsätts det att en webbtjänstklient inte har åtkomst till en webbläsare och agerar självständigt (utan användardeltagande). I ett webbtjänstscenario kan en klient dessutom få åtkomst till en webbtjänst med hjälp av antingen en tjänstidentitet eller en företagsidentitet. I den övning som beskrivs i det här avsnittet får en klient åtkomst till ett exempel ASP.NET webbtjänst med hjälp av en autentiseringstyp för tjänstidentitet som konfigurerats i ACS.

För att kunna utföra stegen i det här avsnittet måste du ladda ned ett exempel ASP.NET-tjänsten. Mer information finns i Kodexempel: ASP.NET webbtjänst.

Steg för att integrera ACS med en ASP.NET-webbtjänst

Viktigt

Innan du utför följande steg kontrollerar du att systemet uppfyller alla krav för .NET-ramverket och plattformen som sammanfattas i ACS-krav.

Utför följande steg för att integrera ACS med det här exemplet ASP.NET webbtjänst:

  • Steg 1 – Skapa ett namnområde för Access Control

  • Steg 2 – Starta ACS-hanteringsportalen

  • Steg 3 – Lägga till ett förlitande part-program

  • Steg 4 – Skapa regler

  • Steg 5 – Konfigurera en tjänstidentitet

  • Steg 6 – Konfigurera förtroende mellan ACS och din ASP.NET-webbtjänst

  • Steg 7 – Testa integreringen mellan ACS och din ASP.NET-webbtjänst

Steg 1 – Skapa ett namnområde för Access Control

Detaljerade anvisningar finns i How to: Create an Access Control Namespace (Gör så här: Skapa ett Access Control-namnområde).

Steg 2 – Starta ACS-hanteringsportalen

Med ACS-hanteringsportalen kan du konfigurera ditt Access Control namnområde genom att lägga till identitetsprovidrar, konfigurera program för förlitande part, definiera regler och grupper av regler och upprätta de autentiseringsuppgifter som programmet för förlitande part litar på.

Så här startar du ACS-hanteringsportalen

  1. Gå till Microsoft Azure Management Portal (https://manage.WindowsAzure.com), logga in och klicka sedan på Active Directory. (Felsökningstips: "Active Directory"-objektet saknas eller är inte tillgängligt)

  2. Om du vill hantera ett Access Control namnområde väljer du namnområdet och klickar sedan på Hantera. (Eller klicka på Access Control namnområden, välj namnområdet och klicka sedan på Hantera.)

Steg 3 – Lägga till ett förlitande part-program

I det här avsnittet beskrivs hur du lägger till ett förlitande part-program. Mer information om program från förlitande part finns i Program för förlitande part.

Så här konfigurerar du ett förlitande part-program

  1. I ACS-hanteringsportalen klickar du på Program för förlitande part i trädet till vänster eller klickar på länken Förlitande part-program under avsnittet Komma igång.

  2. På sidan Program för förlitande part klickar du på Lägg till.

  3. Gör följande på sidan Lägg till förlitande part-program :

    • I Namn skriver du namnet på det förlitande partprogrammet. I den här övningen skriver du ASPNET Simple Service.

    • I Läge väljer du Ange inställningar manuellt.

    • I Sfär skriver du den URI som säkerhetstoken som utfärdas av ACS gäller för. I den här övningen skriver du https://localhost:8000/Service.

    • I Retur-URL anger du den URL som ACS returnerar säkerhetstoken till. I den här övningen skriver du https://localhost:8000/Service.

    • I Fel-URL (valfritt) anger du den URL som ACS kan publicera till om ett fel inträffar under inloggningen. Lämna fältet tomt i den här övningen.

    • I Tokenformat väljer du ett tokenformat som ACS ska använda när du utfärdar säkerhetstoken till det här förlitande partprogrammet. I den här övningen väljer du SWT. Mer information om token och tokenformat finns i Tokenformat som stöds i ACS och "Tokenformat" i program för förlitande part.

    • I Tokenlivslängd (sek) anger du hur lång tid en säkerhetstoken som utfärdas av ACS ska förbli giltig. I den här övningen accepterar du standardvärdet 600. Mer information om tokenlivslängder finns i " Tokenkrypteringsprincip" i Program för förlitande part.

    • I Identitetsprovidrar kan du välja vilka identitetsprovidrar som ska användas med det här förlitande partprogrammet.

      I den här övningen används dock inga identitetsprovidrar, klienten får åtkomst till webbtjänsten med en tjänstidentitet, så se till att avmarkera kryssrutan bredvid Windows Live ID.

      Mer information om tjänstidentiteter finns i Tjänstidentiteter.

    • I Regelgrupper väljer du de regelgrupper för det förlitande partprogrammet som ska användas vid bearbetning av anspråk. I den här övningen accepterar du Skapa ny regelgrupp som är markerad som standard. Mer information om regelgrupper finns i Regelgrupper och Regler.

    • Under Tokensignering Inställningar i Tokensigneringsnyckel klickar du på knappen Generera för att generera en 256-bitars symmetrisk nyckel för den förlitande parten.

  4. Klicka på Spara.

Steg 4 – Skapa regler

Regler avgör hur anspråk skickas från identitetsprovidrar eller ACS (om ACS är anspråksutfärdaren) till ditt förlitande part-program. Mer information om regler och regelgrupper finns i Regelgrupper och Regler.

Skapa regler

  1. På startsidan för ACS-hanteringsportalen klickar du på Regelgrupper i trädet till vänster eller klickar på länken Regelgrupper under avsnittet Komma igång.

  2. På sidan Regelgrupper klickar du på Standardregelgrupp för ENKEL ASPNET-tjänst (eftersom du gav det förlitande partprogrammet namnet ASPNET Simple Service).

  3. På sidan Redigera regelgrupp klickar du på Lägg till.

  4. Gör följande på sidan Lägg till anspråksregel :

    • I avsnittet Om under Anspråksemissionerare väljer du Access Control Service.

    • I avsnittet Om , under Typ av indataanspråk, lämnar du standardvalet Alla.

    • I avsnittet If (Om ) under Input claim value (Inkommande anspråksvärde) lämnar du standardvalet Any (Alla).

    • I avsnittet Sedan under Utdataanspråkstyp väljer du Ange typ och sedan typåtgärd, eftersom det är den anspråkstyp som anges i koden för det ASP.NET webbtjänstexempel som du använder i den här övningen: requiredClaimType = “action”. Du hittar den här strängen i exempelkoden i Default.aspx.cs under acs\WebServices\ASPNETSimpleService\Service.

    • I avsnittet Sedan under Utdataanspråksvärde väljer du Ange värde och skriver sedan reverse, eftersom det är den anspråkstyp som anges i koden för ASP.NET webbtjänstexempel som du använder i den här övningen: requiredClaimValue = “reverse”. Du hittar den här strängen i exempelkoden i Default.aspx.cs under acs\WebServices\ASPNETSimpleService\Service.

    • Klicka på Spara.

  5. På sidan Redigera regelgrupp klickar du på Spara.

Steg 5 – Konfigurera en tjänstidentitet

I den övning som beskrivs i det här avsnittet begär klienten en ACS-utfärdad enkel webbtoken (SWT) från ACS med ett användarnamn och lösenord som registrerats med och hanteras av ACS, med andra ord en ACS-tjänstidentitet. I det här avsnittet beskrivs hur du konfigurerar en ACS-tjänstidentitet eller hur du konfigurerar autentiseringsuppgifter som hanteras av ACS som klienten kan använda för att begära en token från ACS. Mer information finns i Tjänstidentiteter. I den här övningen anger du namnet på tjänstidentiteten till acssample (ASP.NET-tjänstklienten använder det här värdet som användarnamn när du begär en token från ACS) och lösenordet för att pass@word1.

Så här konfigurerar du en tjänstidentitet

  1. På startsidan för ACS-hanteringsportalen klickar du på Tjänstidentiteter i trädet till vänster.

  2. På sidan Tjänstidentiteter klickar du på Lägg till.

  3. På sidan Lägg till tjänstidentitet gör du följande och klickar sedan på Spara:

    1. I Namn skriver du acssample.

    2. I Typ väljer du Lösenord.

    3. I Lösenord skriver du pass@word1.

    4. Lämna standardvärdena oförändrade i Giltighetsdatum och Förfallodatum.

  4. På sidan Redigera tjänstidentitet klickar du på Spara.

Steg 6 – Konfigurera förtroende mellan ACS och din ASP.NET-webbtjänst

I det här avsnittet beskrivs hur du integrerar ACS med exempeltjänsten ASP.NET. Mer information finns i Kodexempel: ASP.NET webbtjänst.

Konfigurera förtroende mellan ACS och ASP.NET-webbtjänsten

  1. Leta upp ASPNETSimpleService.sln i exemplet som du laddade ned och öppna det i Visual Studio ® 2010.

  2. I Visual Studio 2010 i Solution Explorer dubbelklickar du på web.configunder Lösning "ASPNETSimpleService".

  3. I web.configanger du namnet på Access Control namnområde och den tokensigneringsnyckel som du konfigurerade i ACS i föregående steg ovan. Om du vill visa tokensigneringsnyckeln klickar du på Certifikat och nycklar i ACS-hanteringsportalen.

    Följande kodfragment visar elementen i denweb.config fil som du behöver uppdatera.

    <appSettings>
        <add key="AccessControlHostName" value="accesscontrol.windows.net"/>
        <add key="AccessControlNamespace" value="...enter your Access Control namespace name..."/>
        <add key="IssuerSigningKey" value="...enter your signing key..."/>
      </appSettings>
    
  4. Spara den uppdaterade web.config filen.

  5. I Visual Studio 2010 dubbelklickar du på filen app.config i Solution Explorer under Lösning "ASPNETSimpleService".

  6. I filenapp.config anger du namnet på ditt Access Control namnområde och användarnamnet och lösenordet för den tjänstidentitet som du konfigurerade i ACS i föregående steg. Om du vill visa användarnamnet och lösenordet klickar du på Tjänstidentiteter i ACS-hanteringsportalen.

    Följande kodfragment visar elementen i denapp.config fil som du behöver ändra.

    <appSettings>
        <add key="AccessControlHostName" value="accesscontrol.windows.net"/>
        <add key="AccessControlNamespace" value="...enter your Access Control namespace name..."/>
        <add key="WrapPassword" value="...update to your password..."/>
        <add key="WrapUsername" value="...update to your username..."/>
        <add key="ServiceAddress" value="https://localhost:8000/Service/Default.aspx" />
      </appSettings>
    
  7. Spara den uppdaterade app.config filen.

Steg 7 – Testa integreringen mellan ACS och din ASP.NET-webbtjänst

I det här avsnittet beskrivs hur du kan testa integreringen mellan din ASP.NET-webbtjänst och ACS.

Testa integreringen mellan ACS och din ASP.NET webbtjänst

  1. Om du vill köra tjänsten ASP.NET trycker du på F5 i Visual Studio 2010.

  2. Om du vill köra ASP.NET webbtjänstklient högerklickar du på Klient i Solution Explorer, sedan felsöker och väljer sedan Starta ny instans.

    Ett kommandoradsfönster öppnas med följande meddelande i: Ange en sträng som ska vändas och tryck sedan på <RETUR>.

  3. Ange valfri sträng, till exempel hello world!, och tryck sedan på Retur.

    Om dina indata var hello world!bör du se följande svar i konsolprogrammet: !dlrow olleh.

Se även

Begrepp

ACS Så här gör du