ASP.NET 3.5 Windows Authentication

Pagina: 1
Acties:

  • DerKleinePunkt
  • Registratie: November 2004
  • Niet online

DerKleinePunkt

Es gibt keine kleinen Punkte!

Topicstarter
Situatieschets
Momenteel ben ik bezig met het ontwikkelen van een applicatie waarmee verkopers en managers verkoopstatistieken op kunnen vragen. De huidige Windows groepen zijn Verkoper en Manager. Aan de hand van groep en gebruikersnaam krijgt deze persoon de bij hem horende informatie voorgeschoteld.

Voorbeeld: Verkoper A welke verantwoordelijk is voor rayon x kan niet de gegevens van verkoper B van rayon y inzien. De managers op hun beurt kunnen alles inzien.

Nu ben ik nog niet echt bekend met asp.net waardoor ik met enkele vragen zit waarop ik geen antwoord heb kunnen vinden.

De werkomgeving
Taal: ASP.NET 3.5 in C#, het is webbassed applicatie
OS: Windows 2003 Domain Server, deze voert de asp.net bestanden uit
DB: SQL 2005

Alles bevindt zich op één computer.

Wat wil je weten?
1. Kan men achterhalen welke gebruikers aanwezig zijn op de Windows Server?
2. Kan men achterhalen tot welke groep een gebruiker behoort?
3. Kan men processen koppelen aan het aanmaken / verwijderen van gebruikers?
Voorbeeld: Windows gebruiker a wordt aangemaakt en vervolgens moet de applicatie deze automatisch koppelen aan een rayon. Windows gebruiker b wordt verwijderd en vervolgen moet de applicatie zijn rayon automatisch vrijgeven.

Leuk en aardig die vragen, maar wat heb je zelf uitgezocht?
Helemaal niets…grapje natuurlijk! Volgens mijn “lecture” en Google is het mogelijk de gebruikersnaam en groep waartoe een gebruiker behoort te achterhalen. Bij de huidige voorbeelden is dit echter pas mogelijk nadat een gebruiker zich aanmeld op intratnet website. Ik wil echter zonder dat een gebruiker zich aanmeld kunnen zien welke gebruikers en groepen aanwezig zijn op de Windows Server. Een soort van “select users from windows server” om zo de nodige automatische processen te kunnen starten van vraag 3.

Tips, tricks en suggesties
Heb jij de nodige ervaring of een alternatieve oplossing voor mijn probleem? Of zit ik helemaal verkeerd te denken? Feedback en links zijn meer dan welkom.

[ Voor 4% gewijzigd door DerKleinePunkt op 12-06-2008 16:19 ]

Ein kleiner Punkt in einer grossen Welt


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 23:16

TeeDee

CQB 241

Punt 1,2 en 3 kan je oplossen door de CurrentIdentity oid uit te lezen. Wat ik wel vind is dat, ondanks de uitgebreide TS, het e.e.a. nog wel onduidelijk is.

• Wat bedoel je met 'het systeem'? Valt onder de noemer 'het systeem' nu de Domain server of de applicatie?

Wat betreft de automatische processen: bij het verwijderen van een gebruiker, is dat vanuit de applicatie of vanuit de user list op de server?

Heart..pumps blood.Has nothing to do with emotion! Bored


  • ? ?
  • Registratie: Mei 2007
  • Niet online

? ?

..

[ Voor 103% gewijzigd door ? ? op 25-01-2013 09:51 ]


  • DerKleinePunkt
  • Registratie: November 2004
  • Niet online

DerKleinePunkt

Es gibt keine kleinen Punkte!

Topicstarter
TeeDee schreef op donderdag 12 juni 2008 @ 15:37:

• Wat bedoel je met 'het systeem'? Valt onder de noemer 'het systeem' nu de Domain server of de applicatie?

Met systeem bedoelde ik de applicatie. Heb de TS aangepast
TeeDee schreef op donderdag 12 juni 2008 @ 15:37:
Wat betreft de automatische processen: bij het verwijderen van een gebruiker, is dat vanuit de applicatie of vanuit de user list op de server?
.
Wanneer een Windows gebruiker wordt aangemaakt op de Server wil ik dat de applicatie deze automatisch aan een rayon koppelt. Om dit te bewerkstellingen moet de applicatie elke 15 min. kijken welke gebruikers er op de Server bestaan. Deze methode lijkt me echter wat omslachtig, is het volgende mogelijk met Window Server? if nieuwe gebruiker aanmaken is execute bestand.
era.zer schreef op donderdag 12 juni 2008 @ 15:45:
1 & 2: ASP.NET ? Dus met een browser met NTLM (bij firefox moet je even je windows user/pass ingeven) kun je in asp.net gewoon de Windows gebruikersnaam met domein opvragen.

En vervolgens kun je de active directory gaan aanspreken:
code:
1
2
using System.DirectoryServices;
using ActiveDs;


Met DirectoryEntry en DirectorySearcher kun je dan gaan zoeken op de users en hun properties (groepen) opvragen.
Het betreft een ASP.NET intranet applicatie. Al mijn vragen moeten door ASP.NET uitgevoerd kunnen worden.

Hebben jullie misschien enkele goede links over deze materie?

Ein kleiner Punkt in einer grossen Welt


  • ? ?
  • Registratie: Mei 2007
  • Niet online

? ?

..

[ Voor 97% gewijzigd door ? ? op 25-01-2013 09:51 ]


  • sig69
  • Registratie: Mei 2002
  • Laatst online: 01:08
Wanneer een Windows gebruiker wordt aangemaakt op de Server wil ik dat de applicatie deze automatisch aan een rayon koppelt. Om dit te bewerkstellingen moet de applicatie elke 15 min. kijken welke gebruikers er op de Server bestaan. Deze methode lijkt me echter wat omslachtig, is het volgende mogelijk met Window Server? if nieuwe gebruiker aanmaken is execute bestand.
Dat kan natuurlijk niet, asp.net code wordt pas uitgevoerd als een pagina wordt opgevraagd. Je zou het op kunnen lossen door dit bij de eerste login van de nieuwe gebruiker te doen ofzo. Alleen het "execute bestand" deel wordt dan misschien nog tricky, afhankelijk van wat dit bestand doet en de rechten waaronder het asp.net process draait.

Roomba E5 te koop


  • DerKleinePunkt
  • Registratie: November 2004
  • Niet online

DerKleinePunkt

Es gibt keine kleinen Punkte!

Topicstarter
era.zer schreef op donderdag 12 juni 2008 @ 16:41:
Sinds wanneer kunnen we in ASP.NET geen C# code meer uitvoeren dan?
Ik snap niet wat je bedoeld? De code is in C#.
sig69 schreef op donderdag 12 juni 2008 @ 16:42:
[...]

Dat kan natuurlijk niet, asp.net code wordt pas uitgevoerd als een pagina wordt opgevraagd. Je zou het op kunnen lossen door dit bij de eerste login van de nieuwe gebruiker te doen ofzo. Alleen het "execute bestand" deel wordt dan misschien nog tricky, afhankelijk van wat dit bestand doet en de rechten waaronder het asp.net process draait.
Om dit af te vangen wilde ik Windows Taakplanner (of hoe dat ook moge heten) elk kwartier een specifieke pagina uit laten voeren.

Ein kleiner Punkt in einer grossen Welt


  • bigbeng
  • Registratie: Augustus 2000
  • Laatst online: 26-11-2021
Er is absoluut niets mis met het uitbesteden van bepaalde taken aan aparte executables. Het automatisch toekennen van nieuwe gebruikers aan een rayon is een typisch voorbeeld van een taak die prima apart te beleggen is.
Wat is voor jou de primaire reden om dat toch via een webpagina aanroep in de Task Scheduler te gaan proppen?

  • DerKleinePunkt
  • Registratie: November 2004
  • Niet online

DerKleinePunkt

Es gibt keine kleinen Punkte!

Topicstarter
bigbeng schreef op donderdag 12 juni 2008 @ 17:29:
Er is absoluut niets mis met het uitbesteden van bepaalde taken aan aparte executables. Het automatisch toekennen van nieuwe gebruikers aan een rayon is een typisch voorbeeld van een taak die prima apart te beleggen is.
Wat is voor jou de primaire reden om dat toch via een webpagina aanroep in de Task Scheduler te gaan proppen?
Ik werk reeds enkele jaren met classic asp. Hierdoor ben ik een beetje uit het windows form programmeren en batch opdrachten gerold. Heel kort door de bocht op dit moment weet niets van die onderwerpen af. Hierdoor wilde ik me eerst op asp.net focussen om niet met zoveel mogelijk dingen elkaar bezig te zijn.

Uiteraard sta ik open voor suggesties en wil ik alles in de toekomst zo efficient mogelijk laten lopen. Als je wilt wilt hoor ik graag van je waar je aan zit te denken zodat ik mij hierin kan verdiepen.

Ein kleiner Punkt in einer grossen Welt


  • bigbeng
  • Registratie: Augustus 2000
  • Laatst online: 26-11-2021
Geloof mij dat zodra jij met ASP.NET hebt uitgevogeld hoe je bij Active Directory moet komen en users in groepen kunt stoppen en toevoegen aan database tabellen, dan is het een kleine moeite om dit om te zetten in een batch executable.

[ Voor 13% gewijzigd door bigbeng op 12-06-2008 17:42 ]


  • DerKleinePunkt
  • Registratie: November 2004
  • Niet online

DerKleinePunkt

Es gibt keine kleinen Punkte!

Topicstarter
bigbeng schreef op donderdag 12 juni 2008 @ 17:41:
Geloof mij dat zodra jij met ASP.NET hebt uitgevogeld hoe je bij Active Directory moet komen en users in groepen kunt stoppen en toevoegen aan database tabellen, dan is het een kleine moeite om dit om te zetten in een batch executable.
Bedoel je met users in groepen stoppen dat ik via asp.net Windows accounts aanmaak? Zo ja, dit is niet de bedoeling. De user wordt aangemaakt door de systeembeheerder (extern bedrijf). Het enige wat ik bij mijn 15 min. check hoef te doen is te kijken of een Windows user zich al in mijn database bevindt.

Des al niet te min zal ik eens Googlen op batch executable. Als het echt sneller is, is het dom dit niet te gebruiken. Even voor mezelf is het uberhaupt mogelijk het aanmaken /verwijderen van een Windows Account direct te koppelen aan bestand of is de oplossing met de taskmanager de enige oplossing?
bigbeng schreef op donderdag 12 juni 2008 @ 20:33:
Sorry, batch executable is een term die ik zo even oplepelde. Je wil een console application maken met Visual Studio.Net. Dit is een executable die je met de Task Scheduler kunt aanroepen (op gezette tijden).
Duidelijk.

[ Voor 18% gewijzigd door DerKleinePunkt op 12-06-2008 20:38 ]

Ein kleiner Punkt in einer grossen Welt


  • bigbeng
  • Registratie: Augustus 2000
  • Laatst online: 26-11-2021
Sorry, batch executable is een term die ik zo even oplepelde. Je wil een console application maken met Visual Studio.Net. Dit is een executable die je met de Task Scheduler kunt aanroepen (op gezette tijden).

  • DerKleinePunkt
  • Registratie: November 2004
  • Niet online

DerKleinePunkt

Es gibt keine kleinen Punkte!

Topicstarter
bigbeng schreef op donderdag 12 juni 2008 @ 20:33:
Sorry, batch executable is een term die ik zo even oplepelde. Je wil een console application maken met Visual Studio.Net. Dit is een executable die je met de Task Scheduler kunt aanroepen (op gezette tijden).
Zit nu MSDN door te pluizen, maar ik vind het best moeilijk degelijke voorbeelden te vinden. Heb jij met Google wat meer geluk of weet je boek waarin dit wordt uitgelegd?

Ein kleiner Punkt in einer grossen Welt


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 23:16

TeeDee

CQB 241

Wat wil je uitgelegd hebben dan?

Heel simpel: start Visual Studio > New Project > Console Application en je bent al bijna klaar.
Nu kan je met de Task Scheduler (lees: Geplande taken) jouw Console Application om de zoveel tijd opstarten.

Heart..pumps blood.Has nothing to do with emotion! Bored


  • sig69
  • Registratie: Mei 2002
  • Laatst online: 01:08
DerKleinePunkt schreef op donderdag 12 juni 2008 @ 20:30:
[...]
Even voor mezelf is het uberhaupt mogelijk het aanmaken /verwijderen van een Windows Account direct te koppelen aan bestand of is de oplossing met de taskmanager de enige oplossing?
Wat bedoel je precies met het "koppelen van een bestand" aan het aanmaken / verwijderen van een account? Ik denk dat je hiermee iets in de geest van een event bedoelt? Ik betwijfel of dat bestaat.
DerKleinePunkt schreef op vrijdag 13 juni 2008 @ 09:12:
[...]
Zit nu MSDN door te pluizen, maar ik vind het best moeilijk degelijke voorbeelden te vinden. Heb jij met Google wat meer geluk of weet je boek waarin dit wordt uitgelegd?
In Visual Studio: File > New Project > Console Application

Ik begin een beetje de indruk te krijgen dat je niet echt veel kaas hebt gegeten van de materie, als je dit soort basic dingen niet weet. Zou het niet handiger zijn om je eerst eens in de materie en ontwikkelomgeving te verdiepen voor je je op zo'n project stort?

[ Voor 4% gewijzigd door sig69 op 13-06-2008 09:25 ]

Roomba E5 te koop


  • bigbeng
  • Registratie: Augustus 2000
  • Laatst online: 26-11-2021
Hangt er van af wat je wil natuurlijk. Stap 1 is het maken van een console applicatie (denk ik). Welke versie van Visual Studio gebruik je?

Stap 2 is het benaderen van de Active Directory. Hiervoor zijn legio voorbeelden te vinden op google:
http://www.google.nl/sear...&btnG=Google+zoeken&meta=

Wat ik je wel wil meegeven is dat als je nog niet zo bekend bent met het de materie, zowel op programmeer niveau, als op inhoudelijk niveau, dat je wel veel tijd gaat verliezen met het oplossen van kleine problemen. Er zijn diverse boeken te krijgen over programmeren en dergelijke, die een degelijke basis kunnen vormen voordat je "echt" aan werk gaat:
Programming FAQ - .NET
en
[Alg] Centraal boekentopic - part II

  • DerKleinePunkt
  • Registratie: November 2004
  • Niet online

DerKleinePunkt

Es gibt keine kleinen Punkte!

Topicstarter
TeeDee schreef op vrijdag 13 juni 2008 @ 09:23:
Wat wil je uitgelegd hebben dan?

Heel simpel: start Visual Studio > New Project > Console Application en je bent al bijna klaar.
Nu kan je met de Task Scheduler (lees: Geplande taken) jouw Console Application om de zoveel tijd opstarten.
Ben totaal nieuw in asp.net en de visual studio omgeving. Ben op dit moment druk bezig asp.net aan het leren (ben net enkele dagen bezig). Het hele OO gebeuren had in je classic asp niet, moet dus bij het begin beginnen zodat een boek of tutorial website zeker overbodige geen luxe is. Heb wel enkele websites gevonden, maar dat waren niet de meest gedetaileerde voorbeelden (hello world).
sig69 schreef op vrijdag 13 juni 2008 @ 09:23:
[...]

Wat bedoel je precies met het "koppelen van een bestand" aan het aanmaken / verwijderen van een account? Ik denk dat je hiermee iets in de geest van een event bedoelt? Ik betwijfel of dat bestaat.

[...]

In Visual Studio: File > New Project > Console Application

Ik begin een beetje de indruk te krijgen dat je niet echt veel kaas hebt gegeten van de materie, als je dit soort basic dingen niet weet. Zou het niet handiger zijn om je eerst eens in de materie en ontwikkelomgeving te verdiepen voor je je op zo'n project stort?
Doelde er inderdaad op of ik een bestand kan koppelen aan een bepaald event van / in Windows.
bigbeng schreef op vrijdag 13 juni 2008 @ 09:29:
Hangt er van af wat je wil natuurlijk. Stap 1 is het maken van een console applicatie (denk ik). Welke versie van Visual Studio gebruik je?

Stap 2 is het benaderen van de Active Directory. Hiervoor zijn legio voorbeelden te vinden op google:
http://www.google.nl/sear...&btnG=Google+zoeken&meta=

Wat ik je wel wil meegeven is dat als je nog niet zo bekend bent met het de materie, zowel op programmeer niveau, als op inhoudelijk niveau, dat je wel veel tijd gaat verliezen met het oplossen van kleine problemen. Er zijn diverse boeken te krijgen over programmeren en dergelijke, die een degelijke basis kunnen vormen voordat je "echt" aan werk gaat:
Programming FAQ - .NET
en
[Alg] Centraal boekentopic - part II
Ik werk met Visual Studio 2008.

De materie is inderdaad nieuw voor mij, maar ik kom er wel uit. Goede voorbeelden en of boeken zouden dit proces echter aanzienlijk versnellen, daarom zijn links ook zeer welkom. Momenteel heb ik alleen nog asp.net boek zodat ik het graag hierin wilde doen. Mocht jij of de anderen een goed boek weten waarin console applications besproken worden hoor ik dit graag. Bespaard me een hoop zoekwerk en mijn werkgeven kan het dan gelijk bestellen.

Des al niet te min wil ik wel graag discusseren over mijn vragen en de juiste oplossing / werkwijze hiervan. Al is het alleen om te kijken of ik de juiste weg heb gekozen. Van jullie kennis en ervaring kan ik immers het meeste leren.

[ Voor 13% gewijzigd door DerKleinePunkt op 13-06-2008 14:58 ]

Ein kleiner Punkt in einer grossen Welt

Pagina: 1