Archief: Certificeringsvereisten voor Windows Desktop Apps v1.2
documentversie: 1.2
documentdatum: 31 mei 2012
Dit document bevat de technische vereisten en geschiktheidskwalificaties waaraan een desktop-app moet voldoen om deel te nemen aan het certificeringsprogramma voor Windows 8-bureaublad-apps. Voor Windows 7 werd dit programma het Windows Software Logo Program genoemd.
Welkom!
Het Windows-platform ondersteunt een breed ecosysteem van producten en partners. Het Weergeven van het Windows-logo op uw product vertegenwoordigt een relatie en een gedeelde toezegging voor kwaliteit tussen Microsoft en uw bedrijf. Klanten vertrouwen het Windows-merk op uw product, omdat het ervoor zorgt dat het voldoet aan compatibiliteitsstandaarden en goed presteert op het Windows-platform. Als u windows-app-certificering hebt doorgegeven, kan uw app worden weergegeven in het Windows-compatibiliteitscentrum en is het ook een noodzakelijke stap om een verwijzing naar een bureaublad-app in de Windows Store weer te geven.
Het Windows App Certification Program bestaat uit programma- en technische vereisten om ervoor te zorgen dat apps van derden met het Windows-merk zowel eenvoudig te installeren als betrouwbaar zijn op pc's met Windows. Klanten waarderen stabiliteit, compatibiliteit, betrouwbaarheid, prestaties en kwaliteit in de systemen die ze kopen. Microsoft richt zich op de investeringen om te voldoen aan deze vereisten voor software-apps die zijn ontworpen om te worden uitgevoerd op het Windows-platform voor pc's. Deze inspanningen omvatten compatibiliteitstests voor consistentie van ervaring, verbeterde prestaties en verbeterde beveiliging op pc's met Windows-software. Microsoft-compatibiliteitstests zijn ontworpen in samenwerking met branchepartners en worden voortdurend verbeterd in reactie op de ontwikkelingen in de branche en de vraag van de consument.
De Windows App Certification Kit wordt gebruikt om de naleving van deze vereisten te valideren en vervangt de WSLK die wordt gebruikt voor validatie in het Windows 7-softwarelogoprogramma. De Windows App Certification Kit is een van de onderdelen die zijn opgenomen in de Windows Software Development Kit (SDK).
Geschiktheid voor apps
Een app moet voldoen aan de volgende criteria en alle technische vereisten in dit document om in aanmerking te komen voor certificering van Windows 8-desktop-apps.
- Het moet een zelfstandige app zijn
- Het moet worden uitgevoerd op een lokale Windows 8.1-computer
- Het kan een clientonderdeel van een gecertificeerde Windows Server-app zijn
- Het moet code en functie voltooid zijn
1. Apps zijn compatibel en tolerant
De tijden waarop een app vastloopt of niet meer reageert, veroorzaakt veel frustratie van gebruikers. Apps zijn naar verwachting tolerant en stabiel en elimineren dergelijke fouten helpen ervoor te zorgen dat software beter voorspelbaar, onderhoudbaar, presterend en betrouwbaarder is.
- 1.1 Uw app mag geen afhankelijkheid hebben van windows-compatibiliteitsmodi, AppHelp-bericht en andere compatibiliteitsoplossingen
1.2 Uw app mag geen afhankelijkheid nemen van de VB6-runtime
1.3 Uw app mag geen willekeurige DLL's laden om Win32 API-aanroepen te onderscheppen met HKLM\Software\Microsoft\Windows NT\CurrentVersion\Windows AppInit_dlls.
2. Apps moeten voldoen aan best practices voor Windows-beveiliging
Het gebruik van best practices voor Windows-beveiliging helpt voorkomen dat er blootstelling ontstaat aan kwetsbaarheid voor Windows-aanvallen. Aanvalsoppervlakken zijn de toegangspunten die een kwaadwillende aanvaller kan gebruiken om het besturingssysteem te misbruiken door te profiteren van beveiligingsproblemen in de doelsoftware. Een van de slechtste beveiligingsproblemen is de uitbreiding van bevoegdheden.
- 2.1 Uw app moet sterke en juiste ACL's gebruiken om uitvoerbare bestanden te beveiligen 2.2 Uw app moet sterke en juiste ACL's gebruiken om mappen te beveiligen 2.3 Uw app moet sterke en geschikte ACL's voor het beveiligen van registersleutels 2.4 Uw app moet sterke en geschikte ACL's gebruiken om mappen te beveiligen die objecten bevatten 2.5 Uw app moet de toegang van niet-beheerders tot services beperken die kwetsbaar zijn voor manipulatie 2.6 Uw app moet voorkomen dat services met snel opnieuw opstarten meer dan twee keer per 24 uur opnieuw worden opgestart
Het windows-app-certificeringsprogramma controleert of Windows-aanvalsoppervlakken niet zichtbaar zijn door te controleren of ACL's en services zijn geïmplementeerd op een manier die het Windows-systeem niet in gevaar brengt.
3. Apps ondersteunen Windows-beveiligingsfuncties
Het Windows-besturingssysteem heeft veel functies die systeembeveiliging en privacy ondersteunen. Apps moeten deze functies ondersteunen om de integriteit van het besturingssysteem te behouden. Onjuist gecompileerde apps kunnen bufferoverschrijdingen veroorzaken die op hun beurt denial of service kunnen veroorzaken of schadelijke code kunnen uitvoeren.
- 3.1 Uw app mag allowPartiallyTrustedCallersAttribute (APTCA) niet gebruiken om veilige toegang tot sterk benoemde assembly's te garanderen
3.2 Uw app moet worden gecompileerd met behulp van de vlag /SafeSEH om ervoor te zorgen dat veilige uitzonderingen worden verwerkt
3.3 Uw app moet worden gecompileerd met de vlag /NXCOMPAT om te voorkomen dat gegevens worden uitgevoerd
3.4 Uw app moet worden gecompileerd met behulp van de vlag /DYNAMICBASE voor randomisatie van de adresruimteindeling (ASLR)
3.5 Uw app mag de gedeelde PE-secties niet lezen/schrijven
4. Apps moeten voldoen aan het systeem opnieuw opstarten manager berichten
Wanneer gebruikers afsluiten initiëren, hebben ze meestal een sterke wens om het afsluiten te zien slagen; Ze hebben misschien haast om het kantoor te verlaten en alleen hun computers uit te schakelen. Apps moeten deze wens respecteren door afsluiten niet te blokkeren. In de meeste gevallen is een afsluiting mogelijk niet kritiek, maar moeten apps worden voorbereid op de mogelijkheid van een kritieke afsluiting.
- 4.1 Uw app moet kritieke afsluitingen op de juiste wijze afhandelen
- Bij een kritiek afsluiten worden apps die ONWAAR retourneren naar WM_QUERYENDSESSION verzonden WM_ENDSESSION en gesloten, terwijl de apps die reageren op WM_QUERYENDSESSION worden beëindigd.
- WM\_QUERYENDSESSION met LPARAM = ENDSESSION\_CLOSEAPP(0x1).
Console-apps kunnen SetConsoleCtrlHandler aanroepen om de functie op te geven waarmee afsluitmeldingen worden verwerkt. Service-apps kunnen RegisterServiceCtrlHandlerEx aanroepen om de functie op te geven die afsluitmeldingen ontvangt.
- WM\_ENDSESSION met LPARAM = ENDSESSION\_CLOSEAPP(0x1).
De app moet zich ten minste voorbereiden door gebruikersgegevens op te slaan en de informatie te vermelden die nodig is na het opnieuw opstarten.
5. Apps moeten een schone, omkeerbare installatie ondersteunen
Met een schone, omkeerbare installatie kunnen gebruikers apps op hun systemen met succes beheren (implementeren en verwijderen).
- 5.1 Uw app moet een schone, omkeerbare installatie implementeren
- DisplayName
- InstallLocation
- Uitgever
- UninstallString
- VersionMajor of MajorVersion
- VersionMinor of MinorVersion
- Als de installatie mislukt, moet de app deze kunnen terugdraaien en de machine terugzetten naar de vorige status.
- Het opnieuw opstarten van de computer mag nooit de enige optie zijn aan het einde van een installatie of update. Gebruikers moeten de mogelijkheid hebben om later opnieuw op te starten.
- Windows-inventarisprogramma's en telemetriehulpprogramma's vereisen volledige informatie over geïnstalleerde apps. Als u een MSI-installatieprogramma gebruikt, maakt MSI automatisch de onderstaande registervermeldingen. Als u geen MSI-installatieprogramma gebruikt, moet de installatiemodule de volgende registervermeldingen maken tijdens de installatie:
6. Apps moeten bestanden en stuurprogramma's digitaal ondertekenen
Met een Authenticode-digitale handtekening kunnen gebruikers ervoor zorgen dat de software echt is. Hiermee kunt u ook detecteren of er met een bestand is geknoeid, bijvoorbeeld als het is geïnfecteerd door een virus. Het afdwingen van codeondertekening in de kernelmodus is een Windows-functie die code-integriteit (CI) wordt genoemd, waardoor de beveiliging van het besturingssysteem wordt verbeterd door de integriteit van een bestand te controleren telkens wanneer de installatiekopieën van het bestand in het geheugen worden geladen. CI detecteert of schadelijke code een binair systeembestand heeft gewijzigd. Genereert ook een diagnostische en systeemcontrolelogboekgebeurtenis wanneer de handtekening van een kernelmodule niet correct kan worden gecontroleerd.
- 6.1 Alle uitvoerbare bestanden (.exe, .dll, .ocx, .sys, .cpl, .drv, .scr) moeten zijn ondertekend met een Authenticode-certificaat
6.2 Alle kernelmodusstuurprogramma's die door de app zijn geïnstalleerd, moeten een Microsoft-handtekening hebben die is verkregen via het Windows Hardware Certification-programma. Alle stuurprogramma's voor bestandssysteemfilters moeten zijn ondertekend door Microsoft.
6.3 Uitzonderingen en afstandsverklaringen
- Afstandsverklaringen worden alleen beschouwd voor niet-ondertekende herdistribueerbare derden, met uitzondering van stuurprogramma's. Een bewijs van communicatie dat een ondertekende versie van de herdistribueerbare(n) aanvraagt, is vereist om deze verklaring van afstand te verlenen.
7. Apps blokkeren installatie of het starten van apps niet op basis van een versiecontrole van het besturingssysteem
Het is belangrijk dat klanten niet kunstmatig worden geblokkeerd om hun app te installeren of uit te voeren wanneer er geen technische beperkingen zijn. In het algemeen, als apps zijn geschreven voor Windows Vista of latere versies van Windows, moeten ze niet de versie van het besturingssysteem controleren.
- 7.1 Uw app mag geen versiecontroles uitvoeren op gelijkheid
- Apps die worden geleverd als één pakket dat ook wordt uitgevoerd op Windows XP, Windows Vista en Windows 7, en moeten de versie van het besturingssysteem controleren om te bepalen welke onderdelen moeten worden geïnstalleerd op een bepaald besturingssysteem.
- Apps die alleen de minimale versie van het besturingssysteem controleren (alleen tijdens de installatie, niet tijdens runtime) door alleen de goedgekeurde API-aanroepen te gebruiken en die de minimale versievereiste in het app-manifest correct vermelden.
- Beveiligings-apps (antivirus, firewall, enzovoort), systeemhulpprogramma's (bijvoorbeeld defragmentatie, back-ups en diagnostische hulpprogramma's) die de versie van het besturingssysteem controleren met behulp van alleen de goedgekeurde API-aanroepen.
- Als u een specifieke functie nodig hebt, controleert u of de functie zelf beschikbaar is. Als u Windows XP nodig hebt, controleert u op Windows XP of hoger (>= 5.1). Op deze manier blijft uw detectiecode werken aan toekomstige versies van Windows. Stuurprogramma-installatieprogramma's en verwijdermodules mogen nooit de versie van het besturingssysteem controleren.
8. Apps laden geen services of stuurprogramma's in de veilige modus
Met de veilige modus kunnen gebruikers Windows diagnosticeren en problemen oplossen. Stuurprogramma's en services mogen niet in de veilige modus worden geladen, tenzij ze nodig zijn voor basissysteembewerkingen zoals stuurprogramma's voor opslagapparaten of voor diagnostische en hersteldoeleinden, zoals antivirusscanners. Wanneer Windows zich in de veilige modus bevindt, worden standaard alleen de stuurprogramma's en services gestart die vooraf bij Windows zijn geïnstalleerd.
- 8.1 Uitzonderingen en afstandsverklaringen
- Voor stuurprogramma's en services die in de veilige modus moeten worden gestart, is een verklaring van afstand vereist. De afstandsaanvraag moet elk van toepassing zijnde stuurprogramma's of services bevatten die naar de SafeBoot-registersleutels worden geschreven en de technische redenen beschrijven waarom de app of service in de veilige modus moet worden uitgevoerd. Het installatieprogramma van de app moet al deze stuurprogramma's en services registreren met behulp van deze registersleutels:
Opmerking: U moet deze stuurprogramma's en services testen om ervoor te zorgen dat ze werken in de veilige modus zonder fouten.
9. Apps moeten de richtlijnen voor gebruikersaccountbeheer volgen
Sommige Windows-apps worden uitgevoerd in de beveiligingscontext van een beheerdersaccount en apps vragen vaak overmatige gebruikersrechten en Windows-bevoegdheden aan. Door de toegang tot resources te beheren, kunnen gebruikers hun systemen beheren en beschermen tegen ongewenste wijzigingen. Een ongewenste wijziging kan schadelijk zijn, zoals een rootkit die de controle over de computer neemt of het resultaat is van een actie die wordt uitgevoerd door personen met beperkte bevoegdheden.. De belangrijkste regel voor het beheren van de toegang tot resources is het bieden van de minste hoeveelheid toegangsstandaardgebruikerscontext die een gebruiker nodig heeft om zijn of haar benodigde taken uit te voeren. Door de richtlijnen voor gebruikersaccountbeheer (UAC) te volgen, beschikt u over de benodigde machtigingen wanneer deze nodig zijn voor de app, zonder dat het systeem voortdurend blootstelt aan beveiligingsrisico's. De meeste apps hebben geen beheerdersbevoegdheden nodig tijdens runtime en moeten prima worden uitgevoerd als een standaardgebruiker.
- 9.1 Uw app moet een manifest hebben dat uitvoeringsniveaus definieert en het besturingssysteem vertelt welke bevoegdheden de app nodig heeft om uit te voeren
- Systeemhulpprogramma's met uitvoeringsniveau ingesteld op highestAvailable en/of requireAdministrator
- Alleen de toegankelijkheids- of UI Automation Framework-app stelt de uiAccess-vlag in op true om de isolatie van gebruikersinterfacemachtiging (UIPI) te omzeilen. Als u het app-gebruik correct wilt starten, moet deze vlag Authenticode zijn ondertekend en zich op een beveiligde locatie in het bestandssysteem bevinden, namelijk Program Files.
- De markering van het app-manifest is alleen van toepassing op EXE's, niet op DLL's. Dit komt doordat UAC dll's niet inspecteert tijdens het maken van het proces. Het is ook de moeite waard om te vermelden dat UAC-regels niet van toepassing zijn op Windows Services. Het manifest kan worden ingesloten of extern.
Als u een manifest wilt maken, maakt u een bestand met de naam <app_name>.exe.manifest en slaat u het op in dezelfde map als de EXE. Houd er rekening mee dat een extern manifest wordt genegeerd als de app een intern manifest heeft. Bijvoorbeeld:
<requestedExecutionLevel level="asInvoker | highestAvailable | requireAdministrator"" uiAccess="true|false"/>
- Alle beheerfuncties moeten worden verplaatst naar een afzonderlijk proces dat wordt uitgevoerd met beheerdersbevoegdheden. Gebruikersgerichte apps, zoals apps die toegankelijk zijn via de programmagroep in het startmenu en waarvoor uitbreiding is vereist, moeten Authenticode zijn ondertekend.
- Er is een afstandsverklaring vereist voor apps die hun hoofdproces uitvoeren met verhoogde bevoegdheden (vereisenAdministrator of highestAvailable). Het hoofdproces wordt geïdentificeerd als het toegangspunt van de gebruiker voor de app. Afstandsverklaringen worden overwogen voor de volgende scenario's:
10. Apps moeten standaard worden geïnstalleerd in de juiste mappen
Gebruikers moeten een consistente en veilige ervaring hebben met de standaardinstallatielocatie van bestanden, terwijl ze de optie behouden om een app te installeren op de locatie van hun keuze. Het is ook nodig om app-gegevens op de juiste locatie op te slaan, zodat meerdere personen dezelfde computer kunnen gebruiken zonder elkaar gegevens en instellingen te beschadigen of te overschrijven. Windows biedt specifieke locaties in het bestandssysteem voor het opslaan van programma's en softwareonderdelen, gedeelde app-gegevens en app-gegevens die specifiek zijn voor een gebruiker
- 10.1 Uw app moet standaard zijn geïnstalleerd in de map Program Files
- Registeruitvoeringssleutels HKLM en, of HKCU onder Software\Microsoft\Windows\CurrentVersion
- Registeruitvoeringssleutels HKLM en of HKCU onder Software\Wow6432Node\Microsoft\windows\CurrentVersion
- Startmenu AllPrograms > STARTUP
- Voor systeemeigen 32-bits en 64-bits apps in %ProgramFiles%en %ProgramFiles(x86)% voor 32-bits apps die worden uitgevoerd op x64. Gebruikersgegevens of app-gegevens mogen nooit op deze locatie worden opgeslagen vanwege de beveiligingsmachtigingen die zijn geconfigureerd voor deze map.
- Uw app mag bijvoorbeeld geen van de volgende instellingen instellen.
- Gebruik de juiste methoden voor het installeren van bestanden, zoals lettertypen of stuurprogramma's.
- Wanneer de app is geïnstalleerd, is er geen juiste gebruikerslocatie voor het opslaan van gegevens. Pogingen van een app om standaardkoppelingsgedrag op machineniveau te wijzigen nadat de installatie is mislukt. In plaats daarvan moeten standaardwaarden worden geclaimd op gebruikersniveau, waardoor meerdere gebruikers elkaars standaardinstellingen niet kunnen overschrijven.
- Er is een afstandsverklaring vereist voor apps die schrijven naar de GAC (Global Assembly Cache) .NET-apps moeten assembly-afhankelijkheden privé houden en opslaan in de app-map, tenzij het delen van een assembly expliciet is vereist.
11. Apps moeten ondersteuning bieden voor sessies met meerdere gebruikers
Windows-gebruikers moeten gelijktijdige sessies kunnen uitvoeren zonder conflicten of onderbrekingen.
- 11.1 Uw app moet ervoor zorgen dat bij uitvoering in meerdere sessies lokaal of op afstand de normale functionaliteit van de app niet nadelig wordt beïnvloed
11.2 De instellingen en gegevensbestanden van uw app mogen niet behouden blijven voor alle gebruikers
11.3 De privacy en voorkeuren van een gebruiker moeten worden geïsoleerd voor de sessie van de gebruiker
11.4 De exemplaren van uw app moeten van elkaar worden geïsoleerd
- Dit betekent dat gebruikersgegevens van het ene exemplaar niet zichtbaar zijn voor een ander exemplaar van de app. Geluid in een inactieve gebruikerssessie mag niet worden gehoord in een actieve gebruikerssessie. In gevallen waarin meerdere app-exemplaren gebruikmaken van gedeelde resources, moet de app ervoor zorgen dat er geen conflict is.
- Raadpleeg de UAC-vereisten.
12. Apps moeten x64-versies van Windows ondersteunen
Naarmate 64-bits hardware gebruikelijker wordt, verwachten gebruikers dat app-ontwikkelaars profiteren van de voordelen van 64-bits architectuur door hun apps te migreren naar 64-bits, of dat 32-bits versies van de app goed worden uitgevoerd onder de 64-bits versies van Windows.
- 12.1 Uw app moet systeemeigen ondersteuning bieden voor 64-bits of, minimaal, 32-bits Windows-apps moeten naadloos worden uitgevoerd op 64-bits systemen om compatibiliteit met 64-bits versies van Windows te behouden
12.2 Uw app en de installatieprogramma's mogen geen 16-bits code bevatten of afhankelijk zijn van een 16-bits onderdeel
12.3 De installatie van uw app moet de juiste stuurprogramma's en onderdelen voor de 64-bits architectuur detecteren en installeren
12.4 Alle shell-invoegtoepassingen moeten worden uitgevoerd op 64-bits versies van Windows
12.5-app die wordt uitgevoerd onder de WoW64-emulator mag niet proberen wow64-virtualisatiemechanismen te subverten of omzeilen
- Als er specifieke scenario's zijn waarin apps moeten detecteren of ze worden uitgevoerd onder de WoW64-emulator, moeten ze dit doen door IsWow64Process aan te roepen.
Samenvatting van de tests die zijn uitgevoerd op Desktop-apps
Testnaam | Mogelijke testresultaten |
---|---|
Beheerberichten voor opnieuw opstarten van het systeem naleven | Doorgeven/mislukken |
Omkeerbare installatie opschonen | Doorgeven/mislukken/waarschuwing |
Compatibiliteitstest voor & tolerantie | Doorgeven/mislukken/waarschuwing |
Digitaal ondertekende bestandstest | Doorgeven/mislukken/waarschuwing |
Installeren op de juiste mappentest | Waarschuwing |
Sessietest voor meerdere gebruikers | Waarschuwing |
Test van versiecontrole van besturingssysteem | Doorgeven/mislukken |
Test in veilige modus | Doorgeven/mislukken |
Ondersteuning voor x64 Windows-test | Doorgeven/mislukken |
Testen op wijzigingen in Windows-beveiligingsfuncties (Attack Surface Analyzer) | Doorgeven/mislukken/waarschuwing |
Testen op wijzigingen in Windows-beveiligingsfuncties (BinScope Binary Analyzer) | Waarschuwing |
UAC-test (Gebruikersaccountbeheer) | Doorgeven/mislukken/waarschuwing |
Conclusie
Naarmate deze vereisten zich ontwikkelen, zien we de wijzigingen in de revisiegeschiedenis hieronder. Stabiele vereisten zijn essentieel om uw beste werk te doen, dus we streven ernaar om ervoor te zorgen dat de wijzigingen die we aanbrengen duurzaam zijn en uw apps blijven beveiligen en verbeteren.
Nogmaals bedankt dat u deelneemt aan onze inzet om geweldige klantervaringen te leveren.
Revisiegeschiedenis
Datum | Versie | Beschrijving van revisie | Koppeling naar document |
---|---|---|---|
20 december 2011 | 1.0 | Eerste concept van document voor preview. | |
26 januari 2012 | 1.1 | Bijwerken naar sectie 2. | 1,1 |
31 mei 2012 | 1.2 | Samenvattingstestresultaten toegevoegd Definitief document |
1.2 |
Meer informatie over certificering van desktop-apps
Eis | Beschrijving | Meer informatie |
---|---|---|
Compatibiliteit en tolerantie | Crashes & vastlopen, zijn een grote onderbreking van gebruikers en veroorzaken frustraties. Apps zijn naar verwachting tolerant en stabiel, waardoor dergelijke fouten worden geëlimineerd, zodat software beter voorspelbaar, onderhoudbaar en betrouwbaarder is. |
Windows Vista- en Windows 7- en Windows 8-besturingssystemen toepassingsverificator AppInit-DLL's |
Voldoen aan aanbevolen procedures voor Windows-beveiliging | Het gebruik van best practices voor Windows-beveiliging helpt voorkomen dat er blootstelling ontstaat aan kwetsbaarheid voor Windows-aanvallen. Aanvalsoppervlakken zijn de toegangspunten die een kwaadwillende aanvaller kan gebruiken om het besturingssysteem te misbruiken door te profiteren van beveiligingsproblemen in de doelsoftware. Een van de slechtste beveiligingsproblemen is de uitbreiding van bevoegdheden. |
Surface Analyzer- aanvallen toegangsbeheerlijsten |
Windows-beveiligingsfuncties ondersteunen | Het Windows-besturingssysteem heeft veel maatregelen geïmplementeerd ter ondersteuning van systeembeveiliging en privacy. Toepassingen moeten deze maatregelen ondersteunen om de integriteit van het besturingssysteem te behouden. Onjuist gecompileerde toepassingen kunnen bufferoverschrijdingen veroorzaken die op hun beurt denial of service kunnen veroorzaken of schadelijke code uitvoeren. |
BinScope-hulpprogramma |
Voldoen aan berichten van Systeem opnieuw opstarten manager | Wanneer gebruikers afsluiten initiëren, hebben ze in de overgrote meerderheid van de gevallen een sterke wens om de afsluiting te zien slagen; Ze hebben misschien haast om het kantoor te verlaten en hun computers alleen maar uit te schakelen. Apps moeten deze wens respecteren door afsluiten niet te blokkeren. In de meeste gevallen is een afsluiting mogelijk niet kritiek, maar moeten apps worden voorbereid op de mogelijkheid van een kritieke afsluiting. |
wijzigingen in het afsluiten van toepassingen in Windows Vista voor het opnieuw opstarten van manager |
Schone omkeerbare installatie | Met een schone, omkeerbare installatie kunnen gebruikers apps op hun systemen met succes beheren (implementeren en verwijderen). |
Procedure: Vereisten installeren met een ClickOnce-toepassing -toepassing installeren op 64-bits systemen |
Bestanden en stuurprogramma's digitaal ondertekenen | Met een Authenticode-digitale handtekening kunnen gebruikers ervoor zorgen dat de software echt is. Hiermee kunt u ook detecteren of er met een bestand is geknoeid, bijvoorbeeld als het is geïnfecteerd door een virus. Het afdwingen van codeondertekening in de kernelmodus is een Windows-functie die code-integriteit (CI) wordt genoemd, waardoor de beveiliging van het besturingssysteem wordt verbeterd door de integriteit van een bestand te controleren telkens wanneer de installatiekopieën van het bestand in het geheugen worden geladen. CI detecteert of schadelijke code een binair systeembestand heeft gewijzigd. Genereert ook een diagnostische en systeemcontrolelogboekgebeurtenis wanneer de handtekening van een kernelmodule niet correct kan worden gecontroleerd. |
digitale handtekeningen voor kernelmodules in Windows |
Installatie of starten van apps niet blokkeren op basis van versiecontrole van het besturingssysteem | Het is belangrijk dat klanten niet kunstmatig worden geblokkeerd om hun app te installeren of uit te voeren wanneer er geen technische beperkingen zijn. Over het algemeen, als apps zijn geschreven voor Windows Vista of latere versies, moeten ze geen reden hebben om de versie van het besturingssysteem te controleren. | versiebeheer van besturingssysteem |
Services en stuurprogramma's niet laden in de veilige modus | Met de veilige modus kunnen gebruikers Windows diagnosticeren en problemen oplossen. Tenzij dit nodig is voor basisbewerkingen van het systeem (bijvoorbeeld stuurprogramma's voor opslagapparaten) of voor diagnostische en hersteldoeleinden (bijvoorbeeld antivirusscanners), mogen stuurprogramma's en services niet worden ingesteld op belasting in de veilige modus. Standaard start de veilige modus niet de meeste stuurprogramma's en services die niet vooraf zijn geïnstalleerd met Windows. Ze moeten uitgeschakeld blijven, tenzij het systeem ze vereist voor basisbewerkingen of voor diagnostische en hersteldoeleinden. |
bepalen of het besturingssysteem wordt uitgevoerd in de veilige modus |
Volg de richtlijnen voor gebruikersaccountbeheer (UAC) | Sommige Windows-apps worden uitgevoerd in de beveiligingscontext van een beheerdersaccount en veel hebben overmatige gebruikersrechten en Windows-bevoegdheden nodig. Door de toegang tot resources te beheren, kunnen gebruikers de controle hebben over hun systemen tegen ongewenste wijzigingen (een ongewenste wijziging kan schadelijk zijn, zoals een rootkit die de computer verborgen overneemt of een actie van personen met beperkte bevoegdheden, bijvoorbeeld een werknemer die verboden software op een werkcomputer installeert). De belangrijkste regel voor het beheren van de toegang tot resources is het bieden van de minste hoeveelheid toegangsstandaardgebruikerscontext die een gebruiker nodig heeft om zijn of haar benodigde taken uit te voeren. Het volgen van UAC-richtlijnen biedt app de benodigde machtigingen wanneer dat nodig is, zonder dat het systeem voortdurend blootstelt aan beveiligingsrisico's. |
gebruikersaccountbeheer UAC: richtlijnen voor toepassingsupdates |
Standaard installeren in de juiste mappen | Gebruikers moeten een consistente en veilige ervaring hebben met de standaardinstallatielocatie van bestanden, terwijl ze de optie behouden om een app te installeren op de locatie die ze kiezen. Het is ook nodig om app-gegevens op de juiste locatie op te slaan, zodat meerdere personen dezelfde computer kunnen gebruiken zonder elkaar gegevens en instellingen te beschadigen of te overschrijven. |
overzicht van vereisten voor installeren/verwijderen |
Ondersteuning voor sessies met meerdere gebruikers | Windows-gebruikers moeten gelijktijdige sessies kunnen uitvoeren zonder conflicten of onderbrekingen. |
programmeerrichtlijnen voor Extern bureaublad-services |
Ondersteuning voor x64-versies van Windows | Naarmate 64-bits hardware vaker voorkomt, verwachten gebruikers dat app-ontwikkelaars profiteren van de voordelen van 64-bits architectuur door hun apps te migreren naar 64-bits, of dat 32-bits versies van de app goed worden uitgevoerd onder de 64-bits versies van Windows. |
-toepassingscompatibiliteit: Windows Vista 64-bits |
Zie ook
- Windows-hardwarecertificeringsprogramma
- certificeringsvereisten voor Windows Store-apps