[C#] Impersonation

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • snoopdoge90
  • Registratie: December 2005
  • Laatst online: 03-09 11:31
Ik ben momenteel bezig met een c# programma waarbij er schrijf en lees acties moet worden uitgevoerd op een windows share. Dit lukt vrijwel altijd goed met impersonate, alleen is de situatie deze keer anders.

Dit programma moet verschillende operaties op verschillende domeinen op afstand kunnen uitvoeren, ofwel, de computer waar het op draait, is geen lid van het domein waarop gewerkt wordt.

Impersonate werkt goed zolang ik de DNS instellingen van de computer maar verwijs naar de DNS server van het domein, want anders kan die het domein natuurlijk niet vinden.

Ik zou graag deze stap eruit hebben, maar kom er niet echt uit. Wie o wie kan mij op deze late avond in de juiste richting duwen?

Edit:
Overigens zou ik oplossingen zoals net use liever ontwijken.

[ Voor 4% gewijzigd door snoopdoge90 op 16-01-2011 04:06 ]


Acties:
  • 0 Henk 'm!

  • MTWZZ
  • Registratie: Mei 2000
  • Laatst online: 13-08-2021

MTWZZ

One life, live it!

Je kunt wat gaan truuken met P/Invoke en dan LogonUser gaan gebruiken.

Als je de sample bekijkt kun je zien hoe je dan een WindowsIdentity kunt bouwen op basis van de uitkomst van LogonUser.

[ Voor 31% gewijzigd door MTWZZ op 16-01-2011 09:45 ]

Nu met Land Rover Series 3 en Defender 90


Acties:
  • 0 Henk 'm!

  • snoopdoge90
  • Registratie: December 2005
  • Laatst online: 03-09 11:31
MTWZZ schreef op zondag 16 januari 2011 @ 09:44:
Je kunt wat gaan truuken met P/Invoke en dan LogonUser gaan gebruiken.

Als je de sample bekijkt kun je zien hoe je dan een WindowsIdentity kunt bouwen op basis van de uitkomst van LogonUser.
In mijn huidige class om een user te impersonaten maak ik al gebruik logonUser. logonUser vraagt de 3 parameters username, password en domain. Domain herkent hij namelijk niet wat deze kan hij niet resolven, waardoor je de error krijgt dat er geen aanmeldingsserver beschikbaar zijn.

Hoe dan ook, ik heb het vermoeden dat met pinvoke in WMWNetAddConnection2 het wel gaat werken voor de handelingen die ik nu wil laten uitvoeren. Dat probeer ik straks, maar ik ben nog steeds wel benieuwd hoe je een user kan impersonaten tussen verschillende domeinen..

Acties:
  • 0 Henk 'm!

  • MTWZZ
  • Registratie: Mei 2000
  • Laatst online: 13-08-2021

MTWZZ

One life, live it!

vuhuy schreef op zondag 16 januari 2011 @ 11:21:
[...]


In mijn huidige class om een user te impersonaten maak ik al gebruik logonUser. logonUser vraagt de 3 parameters username, password en domain. Domain herkent hij namelijk niet wat deze kan hij niet resolven, waardoor je de error krijgt dat er geen aanmeldingsserver beschikbaar zijn.

Hoe dan ook, ik heb het vermoeden dat met pinvoke in WMWNetAddConnection2 het wel gaat werken voor de handelingen die ik nu wil laten uitvoeren. Dat probeer ik straks, maar ik ben nog steeds wel benieuwd hoe je een user kan impersonaten tussen verschillende domeinen..
Het feit dat het domein niet geresolved kan worden is denk ik niet een programming probleem maar meer een configuratie probleem.
Wat voor errors krijg je met LogonUser dan?

Nu met Land Rover Series 3 en Defender 90


Acties:
  • 0 Henk 'm!

  • snoopdoge90
  • Registratie: December 2005
  • Laatst online: 03-09 11:31
MTWZZ schreef op zondag 16 januari 2011 @ 15:05:
[...]

Het feit dat het domein niet geresolved kan worden is denk ik niet een programming probleem maar meer een configuratie probleem.
Wat voor errors krijg je met LogonUser dan?
Gedetailleerde error heb ik niet meer, heb de code al verwijderd, maar het gaf in ieder geval deze exception "Er zijn geen aanmeldingsservers beschikbaar om de aanmeldingsaanvraag te verwerken" bij LogonUser.

Het is overigens niet echt een configuratie probleem, maar gewoon een verwachte situatie aangezien het logisch is dat de computer waar de software op draait niet in verbinding staat met de DNS server van het domein.

Heb overigens de meeste handelingen al via WMWNetAddConnection2 kunnen doen. Het instellen van machtigingen op files en folders voor specifieke domein gebruikers gaat helaas echter nog niet.

Heb overigens al vernomen van een paar mensen op MSDN dat dit onmogelijk is, en als ik echt zou willen, de computer maar even lid moest maken van het domein of via een omweg om de laatste handelingen op het domein zelf uit te voeren.

[ Voor 21% gewijzigd door snoopdoge90 op 16-01-2011 20:04 ]


Acties:
  • 0 Henk 'm!

  • PolarBear
  • Registratie: Februari 2001
  • Niet online
vuhuy schreef op zondag 16 januari 2011 @ 19:58:
[...]


Gedetailleerde error heb ik niet meer, heb de code al verwijderd, maar het gaf in ieder geval deze exception "Er zijn geen aanmeldingsservers beschikbaar om de aanmeldingsaanvraag te verwerken" bij LogonUser.

Het is overigens niet echt een configuratie probleem, maar gewoon een verwachte situatie aangezien het logisch is dat de computer waar de software op draait niet in verbinding staat met de DNS server van het domein.
Hoe verwacht je dat Windows een domein user kan valideren als het domein niet gevonden kan worden? Of snap ik het nu niet?

Acties:
  • 0 Henk 'm!

  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
vuhuy schreef op zondag 16 januari 2011 @ 19:58:
[...]
Het is overigens niet echt een configuratie probleem, maar gewoon een verwachte situatie aangezien het logisch is dat de computer waar de software op draait niet in verbinding staat met de DNS server van het domein.
Wat is hier logisch aan? Als hij moet aanmelden bij het domein heb je die dns-gegevens nodig. Dus lijkt me dat je naast je 3 huidige velden gewoon een 4e veld moet aanmaken met adres dns-server.

Acties:
  • 0 Henk 'm!

  • D-Raven
  • Registratie: November 2001
  • Laatst online: 10-09 20:32
vuhuy schreef op zondag 16 januari 2011 @ 19:58:
[...]


Heb overigens al vernomen van een paar mensen op MSDN dat dit onmogelijk is, en als ik echt zou willen, de computer maar even lid moest maken van het domein of via een omweg om de laatste handelingen op het domein zelf uit te voeren.
Dat klopt ook, net zoals PolarBear hierboven mij al zegt, hoe verwacht je dat je jezelf kan impersonaten als een andere domain user, als je het domain niet kunt bereiken. Zou nogal een beveiligings lek zijn als dit kan.
Pagina: 1