Hallo!
Hab ein Problem hinsichtlich der Verwendung der Impersonate-Methode.
Die einzige Methode, um dafür ein WindowsIdentity-Objekt zu erstellen, ist über die Win32-API UserLogon zu gehen.
Da dies aber Win32 Code ist und dieser als unverwalteteter Code gilt, bin ich auf der Suche nach einer anderen Möglichkeit.
Dabei soll ich auf jedem Fall im Bereich des verwalteten Codes bleiben.
Ist eine Manipulation des eigenen WindowsIdentity-Object mit den Eingaben des anderen USers möglich?
Oder:
Kann die Verwendung von nichtverwaltetem Code irgendwie abgesichert werden?
ODer zumindest:
Wie kann eine Manipulation der verwendeten advapi32.dll verhindert werden?
Herzlichen Dank,
go.
Announcement
Collapse
No announcement yet.
Impersonate-Methode im .Net Klasse WindowsIdentity
Collapse
X
-
Impersonate-Methode im .Net Klasse WindowsIdentity
Tags: None
-
Originally posted by go_1 View PostWie kann eine Manipulation der verwendeten advapi32.dll verhindert werden?
Herzlichen Dank,
go.
ein Process im Name den anderen Benutzer starten
-
Originally posted by go_1 View PostDie einzige Methode, um dafür ein WindowsIdentity-Objekt zu erstellen, ist über die Win32-API UserLogon zu gehen.
go.
Code:Private Sub ImpersonateIdentity(ByVal logonToken As IntPtr) ' Retrieve the Windows identity using the specified token. Dim windowsIdentity As New WindowsIdentity(logonToken) ' Create a WindowsImpersonationContext object by impersonating the ' Windows identity. Dim impersonationContext As WindowsImpersonationContext impersonationContext = windowsIdentity.Impersonate() WriteLine("Name of the identity after impersonation: " + _ windowsIdentity.GetCurrent().Name + ".") ' Stop impersonating the user. impersonationContext.Undo() ' Check the identity. WriteLine("Name of the identity after performing an Undo on the " + _ "impersonation: " + windowsIdentity.GetCurrent().Name + ".") End Sub
Da dies aber Win32 Code ist und dieser als unverwalteteter Code gilt, bin ich auf der Suche nach einer anderen Möglichkeit.
Ist eine Manipulation des eigenen WindowsIdentity-Object mit den Eingaben des anderen USers möglich?
Kann die Verwendung von nichtverwaltetem Code irgendwie abgesichert werden?
Der Kompiler importiert die Funktion die unter DLLImport steht in MSIL
(Microsoft Intermediate language)
Runtime findet diese Info undnuztz Marshal Klasse um die Daten zwischen Managed und Unmanaged Code zu übergebenZuletzt editiert von vadym voytas; 12.02.2010, 01:03.
Leave a comment:
Leave a comment: