マニフェスト ファイルの uiAccessから、直メールをいただきました。
申し訳ありませんが、ブログや静的ページに対していただいた質問は、公開させていただきます。これは、ブログにしても静的ページにしても、公開しておくことで誰かの役に立つだろうと考えているからです。各ページへのリファラを見ると、検索サイトからのリファラが多くあります。このことから、実際に役に立っていると考えています。
hikenさんも、書かれているとおり、探し物していてこのページにたどり着かれたとのことです。ここで私が調べたことを、hikenさんにメールで送ると、hikenさんの役にしか立ちません。しかし、元のページはすずさんからいただいたコメントをもとに社本さんやすずさんの協力もあってなりたっている情報です。お二人にも情報の還元はしなければならないと考えます。
hikenさんからのメール
私もUIアクセサビリティ"の為のAというソフトウエアを書いているところです。探しまわってたどり着きました。
SendInputで、マウスやキーボードのイベントを作っております。
たとえば、システムの復元を選択した場合、UACの窓が開きますね。Aアプリは、UACのボタン選択も可能です。しかし、UACの窓が閉じ、システムの復元の窓が開きますと、マウスイベントができなくなります。なぜか、キーボードイベントのAlt+F4は受け付け、むりやりシステムの復元の窓を閉じることはできます。マウスイベントをどのようにかして実現したいのですが、マニフェストのiAccess="true"と署名が必要なのでしょうか?
Loginのための登録がわかりませんでした。
私は、このオペレーションを自動化することには反対します。理由は、いくつかあります。
まず、このオペレーションは、開発者が「この先は昇格が必要」と提示するものです。これは、バグや脆弱性によって、乗っ取りを掛けられる対象となりえます。安全のためには、ここは OS などが「このプロセスは、このようなことをしようとしている。これは、君が意図した動作かい?」と尋ねるようになるべきだと考えています。現在のところ、昇格は runas コマンド(および verb)によってなされています。求められるべき姿となるためには、実行中の部分部分で昇格を求める(あるいは、昇格を学習する)必要があろうかと考えます。
そして、今のところ、ユーザーによるアクションによってしか、このプロンプトは表示されません。これが、うっとうしがられている最大の理由かと思います。しかし、よく考えてみてください。ユーザーによるアクションによってこのプロンプトが表示されるということは、コンピュータが安全に使えている証拠でもあります。勝手にこのプロンプトが出るということは、何らかのプロセスが昇格が必要な何かを起動させようとしている、ということです。過去のエントリに、署名を偽装してマルウェアを起動させる方法を上げています。このように、攻撃可能点が存在しているので、それを広げる方法については(調べておかなくちゃいけないんだけど)調べたくないし、調べたとしても、それを誰かに教えることはしたくありません。
そんなわけで、この、「昇格プロンプトの[続行]ボタンをクリックするタスクを自動化すること」について、ご意見を伺いたいと思います。
投稿日時 : 2008年2月26日 22:21