AppleScript Studio Admin Passwort

Dieses Thema im Forum "Hardware" wurde erstellt von wurzel, 11. November 2002.

  1. wurzel

    wurzel New Member

    Tach zusammen,

    ich rufe uber ein AppleScript Studio Script ein ShellScript mit Admin rechten auf.

    do shell script "/usr/local/tool/shellscript.sh start" with administrator privileges

    Wenn dieser Befehl aufgerufen wird, erscheint eine Dialog Box und ich muss das Admin Passwort eingeben. Über diese Script wird eine Service gestartet oder gestoppt. Bei jedem Aufruf muss ich nun erneut das Admin Passwort eingeben. Gibt es eine Möglichkeit, dass ich nur beim ersten Aufruf das Admin Passwort eintippen muss?

    Gruss

    Wurzel

    Hier der Code:

    on clicked theObject

    set button_name to the name of theObject
    tell main bundle to set shellPath to path for resource "shellscript" extension "sh"
    if button_name = "start" then
    set shellCommand to shellPath & " start > /dev/null 2>&1 &"
    do shell script shellCommand with administrator privileges
    runindi(button_name, catalina_path)
    else if button_name = "stop" then
    set shellCommand to shellPath & " stop > /dev/null 2>&1 &"
    do shell script shellCommand with administrator privileges
    runindi(button_name, catalina_path)
    else if button_name = "version" then
    do shell script "/bin/cat /usr/local/tool/version.properties|cut -d = -f 2"
    set tool_version to the result
    display dialog return & tool_version with icon 1 attached to window "main"
    else if button_name = "configure" then
    do shell script tool_conf with administrator privileges
    else if button_name = "web_int" then
    open location target_URL
    else if button_name = "eddi" then
    do shell script tool_eddi with administrator privileges
    end if
    end clicked
     
  2. shooterko

    shooterko New Member

    [password plain text] -- use this administrator password to avoid a password dialog

    Wie waere es hiermit? Das ganze als Property und gut ist.

    Also zu Beginn des Scripts:
    property pw : ""

    if pw = "" then
    set pw to text returned of (display dialog "Bitte geben Sie das Passwort ein:" default answer "")
    end if

    Dann spaeter dein
    do shell script "/usr/local/tool/shellscript.sh start" with administrator privileges password pw

    Denke, dass muesste helfen!

    CU
    ShooTerKo
     
  3. wurzel

    wurzel New Member

    Diese Variante habe ich schon probiert, leider wird dabei das Passwort nicht auf Richtigkeit überprüft. Das Script wird dann ohne Admin Rechte ausgeführt.

    Danke für Deine Antwort!

    Gruß

    wurzel
     
  4. shooterko

    shooterko New Member

    Oder gibt es da eine Möglichkeit, das Schlüsselbund zu scripten? Bzw. das dein Script eben einmal nachfragt, und das Passwort aber im Schlüsselbund gespeichert wird?

    Waere doch einen Versuch wert...

    CU
    ShooTerKo
     
  5. wurzel

    wurzel New Member

    Tach zusammen,

    ich rufe uber ein AppleScript Studio Script ein ShellScript mit Admin rechten auf.

    do shell script "/usr/local/tool/shellscript.sh start" with administrator privileges

    Wenn dieser Befehl aufgerufen wird, erscheint eine Dialog Box und ich muss das Admin Passwort eingeben. Über diese Script wird eine Service gestartet oder gestoppt. Bei jedem Aufruf muss ich nun erneut das Admin Passwort eingeben. Gibt es eine Möglichkeit, dass ich nur beim ersten Aufruf das Admin Passwort eintippen muss?

    Gruss

    Wurzel

    Hier der Code:

    on clicked theObject

    set button_name to the name of theObject
    tell main bundle to set shellPath to path for resource "shellscript" extension "sh"
    if button_name = "start" then
    set shellCommand to shellPath & " start > /dev/null 2>&1 &"
    do shell script shellCommand with administrator privileges
    runindi(button_name, catalina_path)
    else if button_name = "stop" then
    set shellCommand to shellPath & " stop > /dev/null 2>&1 &"
    do shell script shellCommand with administrator privileges
    runindi(button_name, catalina_path)
    else if button_name = "version" then
    do shell script "/bin/cat /usr/local/tool/version.properties|cut -d = -f 2"
    set tool_version to the result
    display dialog return & tool_version with icon 1 attached to window "main"
    else if button_name = "configure" then
    do shell script tool_conf with administrator privileges
    else if button_name = "web_int" then
    open location target_URL
    else if button_name = "eddi" then
    do shell script tool_eddi with administrator privileges
    end if
    end clicked
     
  6. shooterko

    shooterko New Member

    [password plain text] -- use this administrator password to avoid a password dialog

    Wie waere es hiermit? Das ganze als Property und gut ist.

    Also zu Beginn des Scripts:
    property pw : ""

    if pw = "" then
    set pw to text returned of (display dialog "Bitte geben Sie das Passwort ein:" default answer "")
    end if

    Dann spaeter dein
    do shell script "/usr/local/tool/shellscript.sh start" with administrator privileges password pw

    Denke, dass muesste helfen!

    CU
    ShooTerKo
     
  7. wurzel

    wurzel New Member

    Diese Variante habe ich schon probiert, leider wird dabei das Passwort nicht auf Richtigkeit überprüft. Das Script wird dann ohne Admin Rechte ausgeführt.

    Danke für Deine Antwort!

    Gruß

    wurzel
     
  8. shooterko

    shooterko New Member

    Oder gibt es da eine Möglichkeit, das Schlüsselbund zu scripten? Bzw. das dein Script eben einmal nachfragt, und das Passwort aber im Schlüsselbund gespeichert wird?

    Waere doch einen Versuch wert...

    CU
    ShooTerKo
     
  9. shooterko

    shooterko New Member

    Bzw. packe den Code doch in einen
    try
    --dein Shellkommando
    on error
    --erneute Passwortabfrage
    --mit Speicherung ins property
    end try

    Damit wuerdest du bei Fehlschlägen z.B. bei der Authentifizierung ein erneutes Passwort eingeben müssen.

    Du kannst das auch noch verfeinern, indem du genau auf den entsprechenden Fehler reagierst, der ausgegeben wird, wenn das Passwort falsch ist.

    CU
    ShooTerKo
     
  10. wurzel

    wurzel New Member

    Tach zusammen,

    ich rufe uber ein AppleScript Studio Script ein ShellScript mit Admin rechten auf.

    do shell script "/usr/local/tool/shellscript.sh start" with administrator privileges

    Wenn dieser Befehl aufgerufen wird, erscheint eine Dialog Box und ich muss das Admin Passwort eingeben. Über diese Script wird eine Service gestartet oder gestoppt. Bei jedem Aufruf muss ich nun erneut das Admin Passwort eingeben. Gibt es eine Möglichkeit, dass ich nur beim ersten Aufruf das Admin Passwort eintippen muss?

    Gruss

    Wurzel

    Hier der Code:

    on clicked theObject

    set button_name to the name of theObject
    tell main bundle to set shellPath to path for resource "shellscript" extension "sh"
    if button_name = "start" then
    set shellCommand to shellPath & " start > /dev/null 2>&1 &"
    do shell script shellCommand with administrator privileges
    runindi(button_name, catalina_path)
    else if button_name = "stop" then
    set shellCommand to shellPath & " stop > /dev/null 2>&1 &"
    do shell script shellCommand with administrator privileges
    runindi(button_name, catalina_path)
    else if button_name = "version" then
    do shell script "/bin/cat /usr/local/tool/version.properties|cut -d = -f 2"
    set tool_version to the result
    display dialog return & tool_version with icon 1 attached to window "main"
    else if button_name = "configure" then
    do shell script tool_conf with administrator privileges
    else if button_name = "web_int" then
    open location target_URL
    else if button_name = "eddi" then
    do shell script tool_eddi with administrator privileges
    end if
    end clicked
     
  11. shooterko

    shooterko New Member

    [password plain text] -- use this administrator password to avoid a password dialog

    Wie waere es hiermit? Das ganze als Property und gut ist.

    Also zu Beginn des Scripts:
    property pw : ""

    if pw = "" then
    set pw to text returned of (display dialog "Bitte geben Sie das Passwort ein:" default answer "")
    end if

    Dann spaeter dein
    do shell script "/usr/local/tool/shellscript.sh start" with administrator privileges password pw

    Denke, dass muesste helfen!

    CU
    ShooTerKo
     
  12. wurzel

    wurzel New Member

    Tach zusammen,

    ich rufe uber ein AppleScript Studio Script ein ShellScript mit Admin rechten auf.

    do shell script "/usr/local/tool/shellscript.sh start" with administrator privileges

    Wenn dieser Befehl aufgerufen wird, erscheint eine Dialog Box und ich muss das Admin Passwort eingeben. Über diese Script wird eine Service gestartet oder gestoppt. Bei jedem Aufruf muss ich nun erneut das Admin Passwort eingeben. Gibt es eine Möglichkeit, dass ich nur beim ersten Aufruf das Admin Passwort eintippen muss?

    Gruss

    Wurzel

    Hier der Code:

    on clicked theObject

    set button_name to the name of theObject
    tell main bundle to set shellPath to path for resource "shellscript" extension "sh"
    if button_name = "start" then
    set shellCommand to shellPath & " start > /dev/null 2>&1 &"
    do shell script shellCommand with administrator privileges
    runindi(button_name, catalina_path)
    else if button_name = "stop" then
    set shellCommand to shellPath & " stop > /dev/null 2>&1 &"
    do shell script shellCommand with administrator privileges
    runindi(button_name, catalina_path)
    else if button_name = "version" then
    do shell script "/bin/cat /usr/local/tool/version.properties|cut -d = -f 2"
    set tool_version to the result
    display dialog return & tool_version with icon 1 attached to window "main"
    else if button_name = "configure" then
    do shell script tool_conf with administrator privileges
    else if button_name = "web_int" then
    open location target_URL
    else if button_name = "eddi" then
    do shell script tool_eddi with administrator privileges
    end if
    end clicked
     
  13. shooterko

    shooterko New Member

    [password plain text] -- use this administrator password to avoid a password dialog

    Wie waere es hiermit? Das ganze als Property und gut ist.

    Also zu Beginn des Scripts:
    property pw : ""

    if pw = "" then
    set pw to text returned of (display dialog "Bitte geben Sie das Passwort ein:" default answer "")
    end if

    Dann spaeter dein
    do shell script "/usr/local/tool/shellscript.sh start" with administrator privileges password pw

    Denke, dass muesste helfen!

    CU
    ShooTerKo
     
  14. wurzel

    wurzel New Member

    Diese Variante habe ich schon probiert, leider wird dabei das Passwort nicht auf Richtigkeit überprüft. Das Script wird dann ohne Admin Rechte ausgeführt.

    Danke für Deine Antwort!

    Gruß

    wurzel
     
  15. shooterko

    shooterko New Member

    Oder gibt es da eine Möglichkeit, das Schlüsselbund zu scripten? Bzw. das dein Script eben einmal nachfragt, und das Passwort aber im Schlüsselbund gespeichert wird?

    Waere doch einen Versuch wert...

    CU
    ShooTerKo
     
  16. shooterko

    shooterko New Member

    Bzw. packe den Code doch in einen
    try
    --dein Shellkommando
    on error
    --erneute Passwortabfrage
    --mit Speicherung ins property
    end try

    Damit wuerdest du bei Fehlschlägen z.B. bei der Authentifizierung ein erneutes Passwort eingeben müssen.

    Du kannst das auch noch verfeinern, indem du genau auf den entsprechenden Fehler reagierst, der ausgegeben wird, wenn das Passwort falsch ist.

    CU
    ShooTerKo
     

Diese Seite empfehlen