Goedemorgen forum,
voor mijn stage ben ik bezig een webbassed applicatie te maken. Hierbij worden een aantal dingen weggeschreven in een database,
Nu wil ik bij houden wie de laatste wijzigingen gedaan heeft op de database.
Elk record in de database heeft een veld genaamd: wijziging. Als er een record gewijzigd wordt (of aangemaakt) wordt dit veld gevuld met de huidige datum+tijd en de ingelogde windows naam,
Nu werkt dit niet helemaal goed. Ik krijg namelijk niet de juiste ingelogde windows naam op de client, maar de ingelogde windows naam op de server.
De source files (aspx) staan allemaal op een fileserver hier binnen het bedrijf. (NTFS beveiligd) IIS draait weer op een andere server. Hier heeft het bedrijf voor gekozen.
Bij IIS op server 1 heb ik virtuele directory aangemaakt naar de map (waarin mijn aspx bestanden staan) op de fileserver. Dit werkt alles prima.
Alleen wanneer ik een virtuele directory aanmaak moet ik (omdat de fileserver NTFS is) een gebruikersnaam en wachtwoord ingeven. Wanneer ik in een aspx file User.Identity.Name of System.Security.Principal.WindowsIdentity.GetCurrent().Name doe, krijg ik dus alleen de user name terug die er gebruikt wordt om contact te maken met de file server.
Nu heb ik in IIS al anonymous access uitgezet en integrated windows autentication aangezet. Ook heb ik in mijn web.config gebruik gemaakt van impersonatie.
Nu denk ik echter dat het daarmee mis gaat.
Kan iemand mij wellicht vertellen hoe ik de juiste ingelogde windowsnaam van de client naar voren krijg?
Bedankt!
voor mijn stage ben ik bezig een webbassed applicatie te maken. Hierbij worden een aantal dingen weggeschreven in een database,
Nu wil ik bij houden wie de laatste wijzigingen gedaan heeft op de database.
Elk record in de database heeft een veld genaamd: wijziging. Als er een record gewijzigd wordt (of aangemaakt) wordt dit veld gevuld met de huidige datum+tijd en de ingelogde windows naam,
Nu werkt dit niet helemaal goed. Ik krijg namelijk niet de juiste ingelogde windows naam op de client, maar de ingelogde windows naam op de server.
De source files (aspx) staan allemaal op een fileserver hier binnen het bedrijf. (NTFS beveiligd) IIS draait weer op een andere server. Hier heeft het bedrijf voor gekozen.
Bij IIS op server 1 heb ik virtuele directory aangemaakt naar de map (waarin mijn aspx bestanden staan) op de fileserver. Dit werkt alles prima.
Alleen wanneer ik een virtuele directory aanmaak moet ik (omdat de fileserver NTFS is) een gebruikersnaam en wachtwoord ingeven. Wanneer ik in een aspx file User.Identity.Name of System.Security.Principal.WindowsIdentity.GetCurrent().Name doe, krijg ik dus alleen de user name terug die er gebruikt wordt om contact te maken met de file server.
Nu heb ik in IIS al anonymous access uitgezet en integrated windows autentication aangezet. Ook heb ik in mijn web.config gebruik gemaakt van impersonatie.
Nu denk ik echter dat het daarmee mis gaat.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| web.config
<?xml version="1.0"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
<system.web>
<compilation debug="true">
<assemblies>
<add assembly="System.Management, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
<add assembly="System.Data.OracleClient, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
</assemblies>
</compilation>
<identity impersonate="true" />
<!-- Impersonatie -->
<customErrors mode="Off"/>
<!-- Geef gedetailleerde foutmelding op remote computer -->
</system.web>
</configuration> |
Kan iemand mij wellicht vertellen hoe ik de juiste ingelogde windowsnaam van de client naar voren krijg?
Bedankt!