Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Overzicht
In dit artikel wordt uitgelegd hoe u het nieuwe APNS HTTP/2-protocol gebruikt met verificatie op basis van tokens.
De belangrijkste voordelen van het gebruik van het nieuwe protocol zijn:
- Het genereren van tokens is relatief eenvoudig (vergeleken met certificaten)
- Geen vervaldatums meer: u hebt de controle over uw verificatietokens en hun intrekking
- Nettoladingen kunnen nu maximaal 4 kB zijn
- Synchrone feedback
- U maakt gebruik van Apple’s nieuwste protocol – certificaten gebruiken nog steeds het binaire protocol, dat is aangekondigd voor afschaffing.
Het gebruik van dit nieuwe mechanisme kan in twee stappen worden uitgevoerd:
- Haal de benodigde informatie op via de Apple Developer-accountportal.
- Configureer uw Notification Hub met de nieuwe informatie.
Notification Hubs is nu ingesteld op het gebruik van het nieuwe verificatiesysteem met APNS.
Als u bent gemigreerd van het gebruik van certificaten voor APNS, overschrijven de tokeneigenschappen uw certificaat in ons systeem, maar uw applicatie blijft naadloos meldingen ontvangen.
Verificatiegegevens verkrijgen van Apple
Als u verificatie op basis van tokens wilt inschakelen, hebt u de volgende eigenschappen van uw Apple Developer-account nodig:
Sleutel-id
De sleutel-id kan worden verkregen via de pagina Sleutels onder Certificaten, Id's en profielen in uw Apple Developer-account:
Toepassings-id en toepassingsnaam
De naam en id van de toepassing zijn ook beschikbaar op de pagina Certificaten, Id's en profielen in het ontwikkelaarsaccount.
Configureren via de .NET SDK of Azure Portal
U kunt uw hub configureren voor het gebruik van verificatie op basis van tokens met behulp van onze nieuwste client-SDK of in Azure Portal. Als u verificatie op basis van tokens in de portal wilt inschakelen, meldt u zich aan bij Azure Portal en gaat u naar het deelvenster Instellingen > apple (APNS) van uw Notification Hub. Selecteer Token in de eigenschap Verificatiemodus om uw hub bij te werken met alle relevante tokeneigenschappen.
- Voer de eigenschappen in die u hebt opgehaald uit uw Apple Developer-account.
- Kies de toepassingsmodus (productie of sandbox).
- Klik op de knop Opslaan om uw APNS-referenties bij te werken.
Referenties op basis van tokens bestaan uit de volgende velden:
-
Sleutel-id: id van de persoonlijke sleutel die is gegenereerd in de Apple Developer-portal,
2USFGKSKLTbijvoorbeeld. -
Team-id: ook wel het voorvoegsel of het app-voorvoegsel genoemd. Dit is de id voor de organisatie in de Apple Developer-portal; bijvoorbeeld
S4V3D7CHJR. -
Bundel-id: ook wel de 'app-id' genoemd. Dit is de bundel-id voor de toepassing; bijvoorbeeld
com.example.myapp. Houd er rekening mee dat u slechts één sleutel voor één app kunt gebruiken. Deze waarde wordt toegewezen aan de HTTP-header bij hetapns-topicverzenden van een melding en wordt gebruikt om de specifieke toepassing te targeten. U kunt de waarde nietapns-topicexpliciet instellen. - Token: ook wel de 'sleutel' of 'persoonlijke sleutel' genoemd. Dit wordt verkregen uit het .p8-bestand dat is gegenereerd op de Apple Developer-portal. Voor de sleutel moet APNS zijn ingeschakeld (die is geselecteerd in de Apple Developer-portal bij het genereren van de sleutel). De waarde moet de PEM-kop- en voettekst ervan hebben verwijderd wanneer u deze opgeeft aan de NH-portal/API.
-
Eindpunt: Dit is een schakelaar in het venster van de Notification Hubs-portal en een tekenreeksveld in de API. Geldige waarden zijn
https://api.development.push.apple.com:443/3/deviceofhttps://api.sandbox.push.apple.com:443/3/device. Notification Hubs gebruikt deze waarde voor de productie- of sandboxomgeving voor het verzenden van meldingen. Dit moet overeenkomen met deaps-environmenttoestemming in de app, anders komen de gegenereerde APNS-apparaattokens niet overeen met de omgeving en kunnen de meldingen niet worden verzonden.
Hier volgt een codevoorbeeld waarin het juiste gebruik wordt geïllustreerd:
NamespaceManager nm = NamespaceManager.CreateFromConnectionString(_endpoint);
string token = "YOUR PRIVATE KEY HERE";
string keyId = "YOUR KEY ID HERE";
string appName = "YOUR APP NAME HERE";
string appId = "YOUR APP ID HERE";
NotificationHubDescription desc = new NotificationHubDescription("PATH TO YOUR HUB");
desc.ApnsCredential = new ApnsCredential(token, keyId, appId, appName);
desc.ApnsCredential.Endpoint = @"https://api.development.push.apple.com:443/3/device";
nm.UpdateNotificationHubAsync(desc);