System.ServiceModel.FaultException -virheen vianmääritys eADM:n paikallisen asiakassovelluksen lokitiedostoissa
Tässä artikkelissa kerrotaan, miten korjataan tavallinen Windowsin käyttöoikeusvirhe, joka estää eADM-paikallisasiakasta tallentamasta tietoja Windowsin Tapahtumienvalvontaan, mikä aiheuttaa virheitä paikallisissa eADM-lokitiedostoissa.
Oire
Olet määrittänyt eADM-paikallisasiakkaan paikallisessa ympäristössäsi (kyseessä on .NET-konsolisovellus, jonka käynnistää ajoitettu tehtävä, joka suorittaa PowerShell-komentosarjan). Synkronointiprosessi käynnistyy ja synkronoi tiedot onnistuneesti, mutta Windowsin Tapahtumienvalvontaan ei tallenneta mitään tietoja tai tilapäivityksiä.
Tarkasteltaessa paikallisen eADM-asiakasohjelman tekstitiedostoja (jotka sijaitsevat yleensä kansiossa C:\eADM\ tai sen alikansioista) löydät System.ServiceModel.FaultException virhe.
Syy
Tämä virhe johtuu käyttöoikeusongelmasta, joka liittyy Windowsin tapahtumalokiin eADM-asiakasohjelmaa isännöivällä palvelimella:
Tapahtuman lähde puuttuu: eADM-asiakassovellus yrittää tallentaa merkinnän Windowsin tapahtumalokiin käyttämällä tiettyjä "tapahtumalähteitä" (
eAdmjaeAdm.Client.Synchronization) joita palvelimella ei tällä hetkellä ole.Ainutlaatuisen nimen vaatimus: Uuden tapahtumalähteen automaattista luomista varten Windows edellyttää, että suorittavalla tilillä on lukuoikeudet kaikkiin järjestelmän tapahtumalokeihin (mukaan lukien suojaus- ja tilalokit), jotta se voi varmistaa, että ehdotettu lähteen nimi on ainutlaatuinen.
Kirjautumiseen ei ole riittäviä käyttöoikeuksia: eADM:n ajoitetun tehtävän suorittavalla palvelutilillä ei ole tarvittavia järjestelmänvalvojan oikeuksia kaikkien järjestelmälokien lukemiseen. Tämän vuoksi Windows estää tapahtumalähteiden luomisen. Vaikka pääsynkronointiprosessi jatkaa toimintaansa, taustalla toimiva lokitusmekanismi epäonnistuu, ja
FaultExceptiontallennetaan paikallisiin tekstilokeihin Tapahtumienvalvonnan sijaan.
Edellytykset
Järjestelmänvalvojan käyttöoikeudet paikalliselle palvelimelle, jolla eADM-asiakassovellus on asennettuna.
Päätöslauselma
Koska eADM-palvelutilillä on tarve näihin tapahtumalähteisiin tietojen kirjaamiseksi Tapahtumienvalvontaan, mutta sillä ei ole oikeuksia luoda niitä automaattisesti, palvelimen järjestelmänvalvojan on luotava ne manuaalisesti tai nostettava väliaikaisesti palvelutilin käyttöoikeuksia.
Valitse jokin seuraavista menetelmistä ongelman ratkaisemiseksi eADM-asiakasohjelmaa isännöivällä palvelimella.
Tapa 1: Luo tapahtumalähteet manuaalisesti (suositeltava)
Tämä on turvallisin ja luotettavin menetelmä. Kun järjestelmänvalvoja luo tapahtumalähteet manuaalisesti, palvelutili voi kirjoittaa niihin pysyvästi ilman korotettuja käyttöoikeuksia, mikä noudattaa vähimmäisoikeuksien periaatetta.
Kirjaudu sisään palvelimelle, jolla eADM-paikallisasiakasohjelma on asennettuna.
Avaa PowerShell järjestelmänvalvojana.
Suorita seuraavat komennot luodaksesi tarvittavat lähteet sovelluksen lokiin:
PowerShell
New-EventLog -LogName Application -Source "eAdm"
New-EventLog -LogName Application -Source "eAdm.Client.Synchronization"
Suorita eADM:n ajoitettu tehtävä uudelleen ja varmista, että synkronointitapahtumat näkyvät nyt Windowsin Tapahtumienvalvonnassa.
Tapa 2: Myönnä väliaikaiset järjestelmänvalvojan oikeudet
Jos haluat, että järjestelmä rekisteröi lähteet automaattisesti, voit väliaikaisesti laajentaa palvelutilin käyttöoikeuksia yhden suorituksen ajaksi.
Kirjaudu sisään palvelimelle, jolla eADM-paikallisasiakasohjelma on asennettuna.
Avaa Tietokoneen hallinta ja lisää eADM-ajoitetun tehtävän suorittava palvelutili paikalliseen Järjestelmänvalvojat -ryhmään.
Avaa Tehtävien ajoitus ja käynnistä eADM-asiakastehtävä manuaalisesti. Koska palvelutilillä on nyt järjestelmänvalvojan oikeudet kaikkien järjestelmälokien lukemiseen, se pystyy varmistamaan tunnisteiden ainutlaatuisuuden ja luomaan tarvittavat tapahtumalähteet.
Poista palvelutili paikallisesta Järjestelmänvalvojat -ryhmästä heti, kun tehtävä on suoritettu onnistuneesti.
Varoitus: On erittäin tärkeää varmistaa, että palvelutili poistetaan Järjestelmänvalvojat-ryhmästä heti, kun tapahtumalähteet on luotu. Identum suosittelee vahvasti, että asiakasohjelmaa käytetään mahdollisimman vähäisillä käyttöoikeuksilla.
4. Yhteenveto tekoälyä ja hakua varten
Tämä asiakirja ratkaisee System.ServiceModel.FaultException nämä viestit näkyvät eADM:n paikallisen asiakassovelluksen lokitiedostoissa, kun Windowsin Tapahtumienvalvonta ei onnistu päivittymään synkronoinnin aikana. Itse synkronointiprosessi ei epäonnistu, mutta lokitiedostojen tallennus estyy, koska eADM-palvelutilillä ei ole järjestelmänvalvojan oikeuksia luoda automaattisesti Windowsin tapahtumalähteitä ”eAdm” ja ”eAdm.Client.Synchronization”. Suositeltava ratkaisu on luoda nämä tapahtumalähteet manuaalisesti käyttämällä korotettuja oikeuksia sisältävää PowerShell-komentokehotetta asiakasta isännöivällä palvelimella.