Zoekresultaten geven u een .pbk-bestand, de sleutelnamen lijken vertrouwd, en de voor de hand liggende stap is het te behandelen als een draagbaar schema voor elke Windows-VPN. Dat is het niet. Het formaat hoort bij een eigenaar, en dezelfde sleutel betekent verschillende dingen afhankelijk van welke eigenaar hem schreef. Eerst de reikwijdte lezen is wat voorkomt dat een documentatieoefening een niet-ondersteunde bewerking wordt.

Vier eigenaren, vier verschillende lezers

Vier verschillende eigenaren schrijven bestanden die er hetzelfde uitzien. Een oorspronkelijke verbinding per gebruiker belandt in het telefoonboek van de huidige gebruiker, terwijl een verbinding voor alle gebruikers in een opslag op machineniveau belandt die elk account op de host kan lezen. Een RRAS-server houdt de inbelconfiguratie voor zijn eigen routerol, en een client van derden kan een eigen formaat houden dat alleen de extensie deelt. Dezelfde extensie, vier lezers, vier regelsets.

Een overeenkomende weergavenaam maakt twee van die vermeldingen niet dezelfde, en een sleutel ertussen kopiëren veronderstelt dat een beheerder iets respecteert dat hij nooit heeft gedocumenteerd. De eigenaar bepaalt ook wie het bestand mag wijzigen: een profiel per gebruiker is een keuze van de gebruiker, een profiel op machineniveau is een administratieve beslissing, en een inbelvermelding op een server is routeringsconfiguratie onder zijn eigen wijzigingsbeheer. Daardoor is een eigenaarsfout een rechtenprobleem voordat het een formatprobleem wordt.

Bepaal de eigenaar door naar het onderdeel te kijken dat de verbinding beheert, niet naar het bestand zelf. Een bestand is een artefact; het beherende onderdeel bepaalt welke sleutels het leest en wanneer. Eerst het artefact en daarna de beheerder lezen is de manier waarop mensen een veld bewerken waar niets om vraagt.

Waar het gepubliceerde formaat ophoudt uw bestand te beschrijven

In het RRAS-beheerprotocol is het telefoonboek platte tekst die een beheerclient schrijft en de routeringsdienst leest; daarom beschrijft MS-RRASM-specificatie inbelinstellingen voor een server en niet voor een desktopprofiel. Structuur is het deel dat een vlakke lezing verwoest. Een vermelding kan meerdere mediablokken bevatten, elk met apparaatblokken die op hun beurt blokken voor afzonderlijke nummers bevatten. Daarom kan dezelfde sleutel op meer dan één plaats met een andere betekenis voorkomen.

Lees een sleutel samen met de sectie en de versienotities, en vertaal geen waarde uit een gelijknamig selectievakje in een desktopinterface. Het vinden van vertrouwde sleutels in het document bewijst niet dat het elk veld van een ongerelateerd oorspronkelijk profiel dekt. De sectieregels zijn ook geen toestemming om een desktop-telefoonboek in het serverformaat te herschrijven.

OwnerWhat reads the fileWhat a key means there
Per-user native connectionThe user's own connection managerA property of that user profile
All-user native connectionThe machine-wide connection storeA property shared by everyone on the host
RRAS demand-dialThe RRAS service, using the documented hierarchyA field inside a media, device or number section
Third-party clientThat vendor's own parserWhatever that vendor documents, if anything

De tabel is een leeshulp en geen specificatie: hij zegt welke lezer u moet raadplegen, en de lezer zegt wat het veld betekent. Wanneer die lezer een parser van derden is, kan het eerlijke antwoord zijn dat niets openbaars het veld helemaal documenteert.

Vraag het Windows, niet het bestand

Voor een oorspronkelijke verbinding vraagt u Windows om het profiel in plaats van het bestand te lezen, omdat de getypeerde eigenschappen het gedocumenteerde oppervlak zijn en het enige wat een ondersteunde wijziging aanpast. De twee opdrachten hieronder lezen de twee oorspronkelijke opslagen afzonderlijk. Als het profiel in geen van beide opslagen staat, gebruikt de client die het beheert niet het oorspronkelijke mechanisme en geen enkele oorspronkelijke cmdlet zal het beschrijven.

Get-VpnConnection -Name 'Field Ops'
Get-VpnConnection -AllUserConnection | Select-Object Name, ServerAddress, TunnelType

Voor uitrol en niet voor inspectie is de gedocumenteerde route een beheerde profielinstelling met een benoemd schema, geen numerieke bewerking in een tekst- of binaire blob. Een profieldefinitie beschrijft ondersteunde instellingen; zij levert niet de certificaten en persoonlijke sleutels waarvan het profiel afhankelijk is. Inschrijving is een apart proces met zijn eigen bevoegdheid, en het begrijpen van een telefoonboeksleutel heeft nooit een persoonlijke sleutel verspreid. Plan de twee sporen apart, anders wordt de eerste certificaatuitrol het tweede incident.

Eén eigenschap, dan de levenscyclus eromheen

Een opgeslagen waarde is geen toegepaste waarde. Open na een goedgekeurde wijziging een nieuwe verbinding en controleer de routes die het profiel installeert, het resolverbeleid dat het erft en de bewerking die het mogelijk moest maken. Een sessie hergebruiken die al actief was test de oude instellingen en levert een fout negatief resultaat.

Kopieer het bestand apart voordat u aan de onbewerkte bestandinhoud werkt, want een telefoonboek met meerdere vermeldingen is een gedeeld artefact en een gerichte bewerking die het hele bestand herschrijft heeft een grotere impactradius dan de wijziging. Laat ongerelateerde vermeldingen ongemoeid en bewaar de oorspronkelijke beschermde configuratie tot de nieuwe is geverifieerd. Als een vereist veld niet is gedocumenteerd voor de eigenaar en release die u werkelijk hebt, noteer dat dan als een openstaande supportvraag. Een codering verzinnen uit het bestand van een andere machine is de manier waarop een werkend profiel een debugproject zonder enig referentiepunt wordt.

De discipline is bij elke stap dezelfde: noem de eigenaar, noem de sectie en noem dan de ondersteunde bewerking. Al het andere is een gok met een bronvermelding eraan vastgeniet.

Gerelateerde artikelen