KDE su は権限を取得するのに、システムの "su" を使用します。この項では、kdesu は どのようにこれをするのかの詳細を説明します。
いくつかの su の実装(例えば、Redhatの su)では、標準入力からのパスワード読み込みを 使わないので、KDE su は、 pty/tty のペアを作成し、tty に接続されたそれ自身の 標準ファイルディスクリプターにて"su" を実行します。
ユーザーが選択したコマンドを実行するために、kde su は、対話シェルではなく、"-c" の引数を伴った su を使用します。この引数は、私の知る全てのシェルで認識され、汎用的に動 作するはずです。su は、この "-c" 引数を、対象とするユーザーのシェルに渡し、そして、シ ェルはプログラムを実行します。コマンド例は、"su root -c the_program" となりま す。
su を使って直接ユーザーコマンドを実行する代わりに、kdesu は kdesu_stubと呼ばれる小さな スタブプログラム を実行します。この スタブ(対象のユーザーとして実行されるている)は 、いくつかの情報を pty/tty チャンネル(スタブの標準入出力)越しに kdesu に要求し、それから、ユーザーの プログラムを実行します。渡される情報は、Xディスプレイ、(可能であれば)X 認証クッキー、 環境変数PATH、そして、実行するコマンド、となっています。スタブプログラムが使われる理由 は、X クッキーはプライベートな情報であるためで、コマンドラインに渡すことが出来ないので す。