gr=E2ce =E0 une note d'application Apple, j'ai une petite appli qui
authentifie et autorise un utilisateur s'il est admin.
pour l'instant cette appli basique affiche "Auth correct" sur un
NSTextFieldet c'est tout, je voudrais tester =E7a "en vraie grandeur"
c=E0d, apr=E8s avoir obtenu aunthentification et autorisation, lancer, par
exemple, un script que je lancerait autrement au terminal par sudo.
mon but pr=E9cis et de pouvoir lancer depuis une appli RubyCocoa un
script utilisant rsync sous les droits d'admin.
j'ai bien compris qu'il fallait scinder en 2 l'appli :
- disons la partie UI qui n'a pas besoin d'admin ;
- la partie action effective qui se fait sous admin.
ce que je ne vois pas c'est comme se lance la partie action une fois
les droits obtenus.
en pratique, qu'est-ce qui remplace le "sudo" de command line ???
et comme je me doute que vu ce résultat ne je ne suis pas sudoer avec l'autorisation de "AuthForAll" j'ai essayé un autre truc avec un script zsh qui vérifie si je suis sudoer quand je le lance :
donc ce script crée sur le bureau un fichier texte vide "NOT_SUDOER.txt" si je ne suis pas sudoer en le lançant et un fichier "SUDOER.txt" si je le suis.
résultat de la manip : je ne le suis pas...
en fait mon problème est d'obtenir les droits admin pour un rsync, ma petite appli permettra de synchroniser des répertoires utilisateurs vers une clé usb.
c'est un peu comme CarbonCopyCloner, et dans certains cas, il faut les droits admin pour copier, synchroniser, les fichiers admin ( j'en ai qq'uns dans mon répertoire ~/bin) ...
bon en tk je relirai cette note + attentivement...
pour le reste l'exemple donné par apple marche bien car j'ai vérivié mon /etc/authorization, j'ai bien les nouveaux droits :
<key>com.apple.dts.AuthForAll.Alpha</key> <dict> <key>default-prompt</key> <dict> <key></key> <string>YOU MUST BE AUTHORIZED TO DO ALPHA</string> <key>en</key> <string>You must be authorized to do alpha.</string> <key>en_AU</key> <string>Strewth! You must be authorised to do alpha.</string> </dict> <key>rule</key> <string>allow</string> </dict> <key>com.apple.dts.AuthForAll.Beta</key> <dict> <key>default-prompt</key> <dict> <key></key> <string>YOU MUST BE AUTHORIZED TO DO BETA</string> <key>en</key> <string>You must be authorized to do beta.</string> <key>en_AU</key> <string>Strewth! You must be authorised to do beta.</string> </dict> <key>rule</key> <string>authenticate-admin</string> </dict>
me reste a mieux piger comment lancer la partie spécifique, liée à rsync et nécessitant des droits admin, de mon code.
je pense en faire un petit module pour RubyCocoa...
merci encore !
Yvon
On 3 sep, 10:46, Patrick Stadelmann <Patrick.Stadelm...@unine.ch>
wrote:
In article <1188722506.186455.97...@50g2000hsm.googlegroups.com>,
unbewusst <yvon.thora...@gmail.com> wrote:
j'ai bien compris qu'il fallait scinder en 2 l'appli :
- disons la partie UI qui n'a pas besoin d'admin ;
- la partie action effective qui se fait sous admin.
ce que je ne vois pas c'est comme se lance la partie action une fois
les droits obtenus.
et comme je me doute que vu ce résultat ne je ne suis pas sudoer avec
l'autorisation de "AuthForAll" j'ai essayé un autre truc avec un
script zsh qui vérifie si je suis sudoer quand je le lance :
donc ce script crée sur le bureau un fichier texte vide
"NOT_SUDOER.txt" si je ne suis pas sudoer en le lançant et un fichier
"SUDOER.txt" si je le suis.
résultat de la manip : je ne le suis pas...
en fait mon problème est d'obtenir les droits admin pour un rsync, ma
petite appli permettra de synchroniser des répertoires utilisateurs
vers une clé usb.
c'est un peu comme CarbonCopyCloner, et dans certains cas, il faut les
droits admin pour copier, synchroniser, les fichiers admin ( j'en ai
qq'uns dans mon répertoire ~/bin) ...
bon en tk je relirai cette note + attentivement...
pour le reste l'exemple donné par apple marche bien car j'ai vérivié
mon /etc/authorization, j'ai bien les nouveaux droits :
<key>com.apple.dts.AuthForAll.Alpha</key>
<dict>
<key>default-prompt</key>
<dict>
<key></key>
<string>YOU MUST BE AUTHORIZED TO DO ALPHA</string>
<key>en</key>
<string>You must be authorized to do alpha.</string>
<key>en_AU</key>
<string>Strewth! You must be authorised to do alpha.</string>
</dict>
<key>rule</key>
<string>allow</string>
</dict>
<key>com.apple.dts.AuthForAll.Beta</key>
<dict>
<key>default-prompt</key>
<dict>
<key></key>
<string>YOU MUST BE AUTHORIZED TO DO BETA</string>
<key>en</key>
<string>You must be authorized to do beta.</string>
<key>en_AU</key>
<string>Strewth! You must be authorised to do beta.</string>
</dict>
<key>rule</key>
<string>authenticate-admin</string>
</dict>
me reste a mieux piger comment lancer la partie spécifique, liée à
rsync et nécessitant des droits admin, de mon code.
je pense en faire un petit module pour RubyCocoa...
et comme je me doute que vu ce résultat ne je ne suis pas sudoer avec l'autorisation de "AuthForAll" j'ai essayé un autre truc avec un script zsh qui vérifie si je suis sudoer quand je le lance :
donc ce script crée sur le bureau un fichier texte vide "NOT_SUDOER.txt" si je ne suis pas sudoer en le lançant et un fichier "SUDOER.txt" si je le suis.
résultat de la manip : je ne le suis pas...
en fait mon problème est d'obtenir les droits admin pour un rsync, ma petite appli permettra de synchroniser des répertoires utilisateurs vers une clé usb.
c'est un peu comme CarbonCopyCloner, et dans certains cas, il faut les droits admin pour copier, synchroniser, les fichiers admin ( j'en ai qq'uns dans mon répertoire ~/bin) ...
bon en tk je relirai cette note + attentivement...
pour le reste l'exemple donné par apple marche bien car j'ai vérivié mon /etc/authorization, j'ai bien les nouveaux droits :
<key>com.apple.dts.AuthForAll.Alpha</key> <dict> <key>default-prompt</key> <dict> <key></key> <string>YOU MUST BE AUTHORIZED TO DO ALPHA</string> <key>en</key> <string>You must be authorized to do alpha.</string> <key>en_AU</key> <string>Strewth! You must be authorised to do alpha.</string> </dict> <key>rule</key> <string>allow</string> </dict> <key>com.apple.dts.AuthForAll.Beta</key> <dict> <key>default-prompt</key> <dict> <key></key> <string>YOU MUST BE AUTHORIZED TO DO BETA</string> <key>en</key> <string>You must be authorized to do beta.</string> <key>en_AU</key> <string>Strewth! You must be authorised to do beta.</string> </dict> <key>rule</key> <string>authenticate-admin</string> </dict>
me reste a mieux piger comment lancer la partie spécifique, liée à rsync et nécessitant des droits admin, de mon code.
je pense en faire un petit module pour RubyCocoa...
merci encore !
Yvon
Patrick Stadelmann
In article , unbewusst wrote:
pour l'instant pour tester le fameux exemple Apple "AuthForAll" j'ai fait un bête :
c'est très exactement ce qu'il me manquait, maintenant ça marche super : Console.log: Sep 3 21:44:05 www authexec: executing /usr/libexec/locate.updatedb
Patrick
--
Patrick Stadelmann <Patrick.Stadelm...@unine.ch>
c'est très exactement ce qu'il me manquait, maintenant ça marche
super :
Console.log:
Sep 3 21:44:05 www authexec: executing /usr/libexec/locate.updatedb
c'est très exactement ce qu'il me manquait, maintenant ça marche super : Console.log: Sep 3 21:44:05 www authexec: executing /usr/libexec/locate.updatedb