Sitecore WeChat authenticatie - en wat niemand je vertelt

Er zijn veel OAuth-systemen waarmee je kunt verbinden voor de authenticatie van je websitegebruikers. Elk systeem heeft dezelfde hoofdprincipes, maar om te krijgen waar je moet zijn, is elk systeem iets anders in hoe je de benodigde informatie verkrijgt.

Door Danny Paul van Iersel, 14-1-2024

WeChat vóór Sitecore-verbindingen

WeChat (ook wel Weixin genoemd) is een Chinees berichtensysteem en is door de jaren heen gegroeid tot de app voor alles. Van tekstberichten, videoconferenties, het delen van bestanden tot betalingen. Met klanten die zich bevinden in China of zaken doen met China, is dit een belangrijke toepassing om te integreren.
Wat moeten we bereiken?
Net als bij elk OAuth-systeem hebben we een toepassings-ID of klant-ID en een geheime sleutel nodig. Dit is nodig voor de communicatie tussen uw toepassing en het WeChat-aanmeldingssysteem.

WeChat-account en registratie

Om door te gaan met de WeChat-integratie, moeten we eerst een geverifieerd account hebben op het Weixin Open Platform. Dit kan worden verkregen op de website https://open.weixin.qq.com/.

Nadat we ons hebben aangemeld en ons account hebben aangemaakt, moeten we het laten verifiëren. Om een geverifieerd account te krijgen, is een vergoeding vereist die moet worden betaald. Voor mensen binnen China is deze vergoeding momenteel 300 CNY (+/- 39 euro), voor mensen buiten China is het 99 USD (+/- 92 euro).

Wanneer alle formulieren zijn ingevuld en de betaling is gedaan, duurt het even voordat u bent geverifieerd. Wanneer je bent geverifieerd, kun je beginnen met het registreren van je applicatie. Afhankelijk van het type applicatie moet je naar die sectie gaan. We gaan verder met Website Applicatie.

Maak een nieuwe Website Applicatie aan en vul het formulier in. Houd er rekening mee dat de naam van de Website Applicatie is wat de gebruikers zien op het inlogscherm. Er zijn controles op dit punt als je handelsmerknamen gebruikt en je moet aanvullende informatie verstrekken om dat te kunnen gebruiken.

Vanuit het formulier kun je het "Website Information Registration Formulier" downloaden, dit formulier is belangrijk en moet overeenkomen met alle informatie die je gebruikt op het registratieformulier. Het formulier vereist een bedrijfszegel (stempel) en een handtekening voor autorisatie.

Nadat je dat allemaal hebt ingevuld, moet je wachten tot je applicatie is geverifieerd. Als je aanvraag niet is geverifieerd, ontvang je enkele informatie (in het Chinees) over wat er mis is. Wanneer we een goedgekeurde applicatie hebben, kunnen we naar de details gaan. Hier kunnen we de AppID vinden en een optie om de AppSecret te genereren. De AppSecret wordt alleen getoond wanneer je deze aanmaakt, daarna is deze niet meer zichtbaar. Als je het bent vergeten, heb je de mogelijkheid om het opnieuw in te stellen.

Sitecore-verbinding met WeChat

Laten we eens kijken naar het configuratiebestand dat we gebruiken en zien wat we nodig hebben om de authenticatie te implementeren.

Onderdelen die we gebruiken om alles te verbinden:

  • IdentityProvidersProcessor - WeChatIdentityProvider

  • Sitecore.Owin.Authentication.Services.DefaultExternalUserBuilder - CustomExternalUserBuilder

  • AuthenticationMiddleware - WeChat-beveiligingsmiddleware

Met de ProviderProcessor kunnen we de provider definiëren en aanpassingen maken voor de onAuthenticated- en onReturnEndpoint-taken. In de onAuthenticated-taak kunnen we de ApplyClaimsTransformations instellen.

Voor de onReturnEndpoint kunnen we aanvullende omleidingen configureren nadat een gebruiker succesvol is ingelogd.

Bij de externe gebruikersbouwer configureren we wat de unieke Sitecore-identificator moet zijn van de ingelogde Identity Provider met CreateUniqueUserName.

De AuthenticationMiddleware wordt gebruikt om verbinding te maken met het authenticatiesysteem. U kunt uw eigen middleware maken of als deze beschikbaar zijn, gebruikmaken van NuGet-pakketten. Voor WeChat is er het pakket "Microsoft.Owin.Security.Tencent.Wechat".

Om uw eigen te maken, moeten de volgende onderdelen in overweging worden genomen:

  • Creëer de middleware die kan worden aangeroepen vanuit uw code

  • Opties die u kunt doorgeven als parameters naar de login, bijvoorbeeld:

    • Bijschrift

    • ReturnEndpointPath

    • AuthenticatieMode

    • Scope

    • BackchannelTimeout

  • Het belangrijkste is de AuthenticationHandler om alles te laten werken

    • Roept de endpoints van de loginprovider aan

    • Vraagt een token aan om verdere oproepen te doen

    • Roept gebruikersinformatie op met het ontvangen token

Na afloop van de reis terug naar Sitecore

Met dit alles heeft u succesvol uw oplossing opgezet om WeChat te gebruiken. We hebben alleen een pagina nodig om de aanmeldknop in te stellen en dan zijn we klaar om te gaan. We kunnen alle geconfigureerde providers ophalen met GetSignInUrlInfoArgs.

Het moeilijkste deel bij het integreren van WeChat zou zijn voor niet-Chinese lezers. Veel delen van de website blijven Chinees, zelfs als u overschakelt naar het Engels via het menu. Gelukkig is het met veel vertalingsopties beheersbaar om er doorheen te komen.

Bij het begin van deze reis moet u in gedachten houden dat het mogelijk meer tijd kost dan u denkt. Soms duurt het even voordat alle benodigde onderdelen voor WeChat zijn afgerond en goedgekeurd.

Als u vastzit bij uw integratie, neem dan contact met ons op. We kunnen u mogelijk helpen om uw weg te vervolgen naar het authenticeren van uw gebruikers voor de beste ervaring.

Contacteer ons

Klaar om je digitale ervaring naar een hoger niveau te tillen? Neem gerust contact met ons op voor meer informatie over onze diensten en hoe we jou kunnen helpen het volledige potentieel van je digitale marketing te benutten.

Vertel ons over je project

En we komen met een oplossing op maat

Neem contact op met één van onze consultants om de perfecte match te vinden die bij je past en waarmee je kunt groeien.

Cookie Policy

Onze site maakt gebruik van cookies om de website-ervaring te verbeteren. Door onze website te gebruiken, gaat u akkoord met ons gebruik van cookies. Klik hier voor meer informatie.

Voorkeur opslaan