AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Anwendung als anderer Benutzer starten

Ein Thema von azwa66 · begonnen am 6. Aug 2013 · letzter Beitrag vom 7. Aug 2013
Antwort Antwort
Seite 1 von 3  1 23      
azwa66

Registriert seit: 22. Mär 2004
38 Beiträge
 
#1

Anwendung als anderer Benutzer starten

  Alt 6. Aug 2013, 10:35
Hallo Leute,

ich habe folgenden Situation: Mein Delphi-Programm soll unter Windows 7 mit eingeschränkten Rechten aufgerufen werden. Lokales oder Domänen Adminkonto (Benutzer/Kennwort) sind bekannt. Ich möchte nun aus dem Programm eine andere Anwendung als Admin aufrufen ohne das der übliche Logindialog erscheint. Habe schon viel gelesen und gegoogelt, hat leider nicht geholfen.

Würde mich sehr freuen wenn ihr mir da weiter helfen könntet.

Danke
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: Anwendung als anderer Benutzer starten

  Alt 6. Aug 2013, 10:39
Hallo Leute,

ich habe folgenden Situation: Mein Delphi-Programm soll unter Windows 7 mit eingeschränkten Rechten aufgerufen werden. Lokales oder Domänen Adminkonto (Benutzer/Kennwort) sind bekannt. Ich möchte nun aus dem Programm eine andere Anwendung als Admin aufrufen ohne das der übliche Logindialog erscheint. Habe schon viel gelesen und gegoogelt, hat leider nicht geholfen.

Würde mich sehr freuen wenn ihr mir da weiter helfen könntet.

Danke
Hebelt man damit nicht die UAC aus?
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.110 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: Anwendung als anderer Benutzer starten

  Alt 6. Aug 2013, 10:39
Sehe ich auch so:

Ich glaube wenn das gehen würde, wäre das schlimm. Deine Anwendung läuft mit eingeschränkten Rechten. Nun kann sie doch nicht ungefragt etwas in Gang bringen, das Administratorrechte braucht. Das muss der Benutzer auch explizit bestätigen.

Würde ich jetzt mal behaupten. Beweise oder einschlägige Erfahrung kann ich nicht anbieten
  Mit Zitat antworten Zitat
azwa66

Registriert seit: 22. Mär 2004
38 Beiträge
 
#4

AW: Anwendung als anderer Benutzer starten

  Alt 6. Aug 2013, 10:48
ich dachte genau dafür gebe es solche Funktionen wie LogonUser, ImpersonateLoggedOnUser oder CreateProcessAsUser!?!
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.680 Beiträge
 
Delphi 5 Professional
 
#5

AW: Anwendung als anderer Benutzer starten

  Alt 6. Aug 2013, 10:50
Hebelt man damit nicht die UAC aus?
Nicht nur die hebelte man damit aus, sondern das gesamte Konzept der Nutzer- und Rechtetrennung, völlig unabängig davon, ob die UAC aktiviert ist.

Im Grunde gibt es zwei (mir bekannte) Möglichkeiten: Entweder fragst du selber nach Credentials und nutzt dann diese Daten in CreateProcessAsUser oder du nutzt ShellExecuteEx mit dem Verb 'runas' (ruft UAC sofern aktiv) bzw. 'runasuser' (ruft 'Ausführen als anderer Benutzer') und überlässt es damit Windows, nach den Credentials zu fragen.

MfG Dalai
  Mit Zitat antworten Zitat
azwa66

Registriert seit: 22. Mär 2004
38 Beiträge
 
#6

AW: Anwendung als anderer Benutzer starten

  Alt 6. Aug 2013, 10:57
Hebelt man damit nicht die UAC aus?
Nicht nur die hebelte man damit aus, sondern das gesamte Konzept der Nutzer- und Rechtetrennung, völlig unabängig davon, ob die UAC aktiviert ist.

Im Grunde gibt es zwei (mir bekannte) Möglichkeiten: Entweder fragst du selber nach Credentials und nutzt dann diese Daten in CreateProcessAsUser oder du nutzt ShellExecuteEx mit dem Verb 'runas' (ruft UAC sofern aktiv) bzw. 'runasuser' (ruft 'Ausführen als anderer Benutzer') und überlässt es damit Windows, nach den Credentials zu fragen.

MfG Dalai
Ich habe ja die Credentials aber ich bekomme das mit CreateProcessAsUser nicht hin! Wie geht das??????
Das mit runas find ich nicht so dolle, da der "normale" Benutzer ja nicht das Passwort des Admins kennt.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#7

AW: Anwendung als anderer Benutzer starten

  Alt 6. Aug 2013, 11:06
Aber genau darum geht es doch bei der UAC, für Admin-Rechte muss man sich nochmals als Benutzer mit Adminrechten legitimieren
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
azwa66

Registriert seit: 22. Mär 2004
38 Beiträge
 
#8

AW: Anwendung als anderer Benutzer starten

  Alt 6. Aug 2013, 13:40
Aber genau darum geht es doch bei der UAC, für Admin-Rechte muss man sich nochmals als Benutzer mit Adminrechten legitimieren
So soll es ja auch sein. Nur wäre es m.M. nach schön wenn das Legitimieren über eine Funktion durchführbar wäre.
Über die Funktionen loginUser und ImpersonateLoggedOnUser kann man sich ja auch als anderen Benutzer legitimieren. Leider läuft das anschließende ShellExecuteEx wieder in der "Umgebung" des einfachen (ursprünglichen) Benutzers.
  Mit Zitat antworten Zitat
samso

Registriert seit: 29. Mär 2009
439 Beiträge
 
#9

AW: Anwendung als anderer Benutzer starten

  Alt 6. Aug 2013, 14:07
Ja, das geht. Da das Passwort für den Administrator dem Programm bekannt ist, kann sich das Programm ganz normal anmelden. Am einfachsten geht das mit CreateProcessWithLogonW. Es gibt auch ein entsprechendes Kommandozeilentool "runas".
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#10

AW: Anwendung als anderer Benutzer starten

  Alt 6. Aug 2013, 14:18
Ja, das geht. Da das Passwort für den Administrator dem Programm bekannt ist, kann sich das Programm ganz normal anmelden. Am einfachsten geht das mit CreateProcessWithLogonW. Es gibt auch ein entsprechendes Kommandozeilentool "runas".
Und trotzdem wird bei eingeschaltetem UAC die UAC-Abfrage kommen.

Wenn nicht, dann würde mich das beunruhigen und das gesamte UAC-Geraffel ad absurdum führen
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:10 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz