Toimiiko sovelluksesi, kun käyttäjät siirtyvät Windows Vistaan? Uudet turvallisuusasetukset asettavat sovelluksille entistä tiukemmat vaatimukset. Monet aikaisemmin hyvinä käytäntöinä pidetyt asiat ovat nyt pakollisia.
Windows-sovelluksia on perinteisesti ajettu ylläpitäjän oikeuksin, mikä aiheuttaa monia tietoturvariskejä. Vistassa toimitaan oletuksena peruskäyttäjän oikeuksin, ja oikeuksia korotetaan vain erikoistapauksessa.
Sovellus ei voi enää kirjoittaa tietoja järjestelmärekisterin HKEY_LOCAL_MACHINE-alueelle. Se ei myöskään voi kirjoittaa tiedostoja järjestelmäalueille kuten Windows-kansioon.
Koska Windows on aiemmin ollut sallivampi, moni sovellus kirjoittaa edelleen näille alueille. Vista luo näille sovelluksille oman varjokopion rekisteristä ja järjestelmäkansioista. Sovellus luulee toimivansa kuten ennenkin, mutta se on todellisuudessa eristetty omaan hiekkalaatikkoonsa. Tämä on ainoastaan siirtymäkauden ratkaisu, jota ei suositella käytettävän jatkossa.
Sovelluksen tulisi kirjoittaa omat tiedostonsa Ohjelmatiedostot-kansioon (Program Files), ja käyttäjän tiedostot sekä asetukset käyttäjän profiilikansioon. Näiden kansioiden polut muuttuvat Vistassa, ja oikean polun löytää jatkossakin parhaiten käyttämällä SHGetFolderPath-funktiota.
Jos sovellus kaipaa ylläpitäjän oikeuksia, käyttäjältä kysytään tähän lupa. Jatkuva kyseleminen ei ole käyttäjäystävällistä, eikä koodin ajaminen liian korkein oikeuksin ole turvallista. Perussovellukset tulisikin suunnitella siten, ettei niiden käyttäminen vaadi erikoisoikeuksia. Microsoft on julkaissut välineen, jolla tämän voi varmistaa.
Asennus- ja ylläpitosovelluksille ylläpito-oikeudet ovat välttämättömät. Jos Windows ei tunnista sovelluksen tarpeita, jotkin korotettuja oikeuksia vaativat toiminnot saattavat epäonnistua. RequestedExecutionLevel-manifesti varmistaa, että sovellus ajetaan riittävällä tasolla.
Jos sovellukseen sisältyy harvemmin tarvittavia ylläpitotoimintoja, nämä tulisi eristää omaksi prosessikseen, jolle annetaan korkeammat oikeudet. Tämä koskee erityisesti sovellusten automaattista päivittämistä.
Julkaisujärjestelmä: Drupal | Tietoa Assemblix.netistä