Delen via


Codevoorbeeld: ASP.NET Eenvoudige formulieren

Bijgewerkt: 19 juni 2015

Van toepassing op: Azure

In dit voorbeeld ziet u hoe u ACS integreert met een ASP.NET Web Forms-toepassing. De code voor dit voorbeeld bevindt zich in de submap ASPNETSimpleForms (C#\Websites/ASPNETSimpleForms) van het pakket Microsoft Azure Active Directory Access Control (ACS)-codevoorbeelden.

Vereisten

Als u dit voorbeeld wilt uitvoeren, hebt u het volgende nodig:

  1. Een account in de Azure Portal en een Access Control naamruimte.

  2. Visual Studio 2010 (elke versie)

  3. Windows Identity Foundation SDK

Zie ACS-vereisten (https://go.microsoft.com/fwlink/?LinkId=221065) voor meer informatie.

Het voorbeeld configureren

De ACS-configuratie die voor dit voorbeeld is vereist, kan worden uitgevoerd met behulp van de ACS-beheerportal of de ACS-beheerservice. In dit onderwerp worden beide opties beschreven.

  1. Optie 1: Het voorbeeld configureren met behulp van de ACS-beheerportal

  2. Optie 2: Het voorbeeld configureren met behulp van de ACS Management-service

Optie 1: Het voorbeeld configureren met behulp van de ACS-beheerportal

Het voorbeeld configureren met behulp van de ACS-beheerportal

  1. Ga naar de Microsoft Azure-beheerportal (https://manage.WindowsAzure.com), meld u aan en klik vervolgens op Active Directory. (Tip voor probleemoplossing: Item 'Active Directory' ontbreekt of is niet beschikbaar)

  2. Als u een Access Control naamruimte wilt maken, klikt u op Nieuw, klikt u op App Services, klikt u op Access Control en klikt u vervolgens op Snel maken. (Of klik op Access Control Naamruimten voordat u op Nieuw klikt.)

  3. Als u een Access Control naamruimte wilt beheren, selecteert u de naamruimte en klikt u op Beheren. (Of klik op Access Control Naamruimten, selecteer de naamruimte en klik vervolgens op Beheren.)

    Met deze actie wordt de Access Control-portal voor servicebeheer geopend.

  4. Als u relaties tot stand wilt brengen met de id-providers, wilt u dat de gebruikers van uw website worden gebruikt wanneer u zich aanmeldt, klikt u op Id-providers en voegt u Yahoo! en Google toe. Klik vervolgens op Start om terug te keren naar de hoofdpagina.

  5. Als u uw toepassing wilt registreren bij ACS, klikt u op Relying Party-toepassingen, klikt u op Toevoegen en voert u de volgende gegevens in het formulier in:

    • Voer in het veld Naamhet voorbeeld van ASPNET Simple Forms in.

    • Voer in het veld Realm het veld Realm in https://localhost:62000/

    • Voer in het veld Retour-URL de waarde in https://localhost:62000/

    • Selecteer SAML 2.0 in de vervolgkeuzelijst Token-indeling .

    • Selecteer In de sectie Id-providersGoogle, Windows Live ID en Yahoo!

    • Selecteer in het veld Token-ondertekening de optie Servicenaamruimtecertificaat (standaard) gebruiken.

    • Laat de andere velden op de standaardwaarden staan.

  6. Klik op Opslaan en navigeer naar de hoofdpagina.

  7. Wanneer uw relying party-toepassing is geregistreerd, is het nu tijd om de regels te maken die bepalen welke claims ACS aan uw toepassing gaat uitgeven. In dit voorbeeld doorlopen we gewoon alle claims die zijn uitgegeven door de id-provider. Als u deze regel wilt maken, klikt u op Regelgroepen en vervolgens op Standaardregelgroep voor ASPNET Simple Forms Sample. Klik onder aan de pagina op de koppeling Genereren . Zorg ervoor dat de drie id-providers Yahoo!, Google en zijn geselecteerd en klik op Genereren. Klik ten slotte op Opslaan en ga terug naar de hoofdpagina.

  8. Open Visual Studio wanneer ACS is geconfigureerd.

Optie 2: Het voorbeeld configureren met behulp van de ACS-beheerservice

Het voorbeeld configureren met behulp van de ACS Management Service

  1. Open SamplesConfiguration.cs (acs\Management\Management\ManagementService\Common) om het voorbeeld te configureren. Vervang de tijdelijke aanduidingen in de klasse SamplesConfiguration in de Common-klassebibliotheek door informatie over uw Access Control naamruimte. U vindt de informatie in de ACS-beheerportal.

    Ga naar de ACS-beheerportal: ga naar de Microsoft Azure Beheerportal (https://manage.WindowsAzure.com), meld u aan en klik vervolgens op Active Directory. (Tip voor probleemoplossing: Item 'Active Directory' ontbreekt of is niet beschikbaar) Als u een Access Control naamruimte wilt beheren, selecteert u de naamruimte en klikt u op Beheren. (Of klik op Access Control Naamruimten, selecteer de naamruimte en klik vervolgens op Beheren.)

    • ServiceNamespace: voer de naam in van uw Access Control naamruimte.

    • ManagementServiceIdentityName : voer de naam in van een ACS-beheerserviceaccount. De standaardwaarde is ManagementClient.

      Als u de naam van het beheerserviceaccount wilt vinden, klikt u in de ACS-beheerportal op Beheerservice. De accounts worden weergegeven op naam onder Beheerserviceaccounts.

    • ManagementServiceIdentityKey : voer het wachtwoord in voor het beheerserviceaccount.

      Als u het wachtwoord voor het beheerserviceaccount wilt vinden, klikt u in de ACS-beheerportal op De beheerservice. Klik op de naam van een beheerserviceaccount en klik onder Referenties op Wachtwoord. Het wachtwoord wordt weergegeven in het veld Wachtwoord . Als u het wachtwoord wilt kopiƫren, klikt u op Wachtwoord weergeven.

  2. Voer de ConfigureSample-toepassing uit in Visual Studio, waarmee ACS wordt geconfigureerd om dit voorbeeld uit te voeren.

Het voorbeeld uitvoeren

Het voorbeeld uitvoeren

  1. Open het voorbeeld op Websites\ASPNETSimpleForms\ASPNETSimpleForms.sln in Visual Studio.

  2. Druk op F5 om de toepassing te starten.

  3. Sluit de browser om de toepassing te stoppen.

  4. Klik met de rechtermuisknop op het project en selecteer STS-verwijzing toevoegen in het contextmenu.

  5. Voer in het dialoogvenster de hoofdmap van de webtoepassing in het veld Toepassings-URI in en klik op Volgende. Voor dit voorbeeld is deze waarde https://localhost:62000/

    Notitie

    De afsluitende slash is belangrijk omdat deze is afgestemd op de waarden die u hebt ingevoerd in ACS voor uw relying party. De wizard geeft een waarschuwing uit dat uw site geen SSL gebruikt. Accepteer deze waarschuwing door op de knop Ja te klikken, maar vergeet niet dat een productiewebsite bijna altijd SSL moet gebruiken voor dit soort scenario's.

  6. Selecteer in het volgende venster het keuzerondje Bestaande STS gebruiken en voer de URI in van de WS-Federation metagegevens die zijn gepubliceerd door uw Access Control naamruimte. Deze URI vindt u in de portal onder Toepassingsintegratie. Als uw Access Control naamruimte acssamples is, wordt https://acssamples.de URI accesscontrol.windows.net/FederationMetadata/2007-06/FederationMetadata.xml. Nadat u de waarde hebt ingevoerd, klikt u op Volgende.

  7. Omdat voor uw website geen versleutelde tokens zijn vereist, klikt u op Volgende in de resterende dialoogvensters en klikt u vervolgens op Voltooien.

  8. Zowel ACS als uw toepassing zijn nu geconfigureerd. Druk op F5 in Visual Studio om de toepassing uit te voeren. Uw browser wordt naar de door ACS gehoste startpagina voor detectie van thuisdomeinen geleid.

  9. Klik op Yahoo! of Google en uw browser wordt naar die id-provider gebracht.

  10. Zodra uw browser zich bij de id-provider bevindt, voert u referenties in voor een testaccount en accepteert u het formulier voor gebruikerstoestemming.

  11. Uw browser moet terugkeren naar https://localhost:62000/. U ziet dat de naam van uw testidentiteit wordt weergegeven in de rechterbovenhoek van de pagina. Deze gegevens zijn uitgegeven door de id-provider en zijn geretourneerd naar uw toepassing via ACS.