- PR -

ActiveXコントロールをログインユーザーとは別のユーザーでブラウザにインストールする方法

投稿者投稿内容
toto
常連さん
会議室デビュー日: 2005/10/18
投稿数: 46
お住まい・勤務地: 岡山
投稿日時: 2006-05-12 13:39
ASP.netで、あるアプリを使用して帳票をブラウザに表示したいと考えています。
その際に、クライアントのブラウザに帳票表示用のビュアー(ActiveXコントロール)をインストールする必要があります。
通常であれば、Webページ内に

<OBJECT id=hoge classid="CLSID:〜(省略)" codebase="http://hoge/download/hoge.ocx#Version=1,0,0,0"></OBJECT>

上記の様にオブジェクトタグ内のcodebaseでActiveXコントロールまでのパスを指定してあげると、クライアントへ自動配布されます。(自動配布確認済み)

しかし、今回導入するクライアント様ではPCにログインしたユーザーにはActiveXコントロールをインストール権限が付与されていません。
そこで、ActiveXコントロールをインストールする際のみ、一時的にインストール権限がある別のユーザー(Administrator)でActiveXをインストールする方法が無いかと考えています。
少し調べるとWSH(Windowsスクリプティングホスト)を使用すれば、出来る様な、出来ない様な。。。

もっと便利なこんな方法がある、もしくはWSHでこの様に書けば出来る等教えていただければと思います。
プログラマー初心者の為、サンプルソースをご提示いただければ幸いです。

以上、何卒よろしくお願いいたします。
ちゃっぴ
ぬし
会議室デビュー日: 2004/12/10
投稿数: 873
投稿日時: 2006-05-12 14:23
偽装して install って browser からやろうとしているのでしょうか?
# とりあえず、それって非常に問題だと思いません?

引用:
しかし、今回導入するクライアント様ではPCにログインしたユーザーにはActiveXコントロールをインストール権限が付与されていません。



file か registry かわかりませんが、ACL で拒否食らっていると思いますので、使用する user で更新できるような ACL の許可を検討するほうが正論でしょう。
# 拒否くらっている場所を調べるには、AccessEnum, Filemon, Regmon が使えるでしょう。

それができないのであれば、web からの install はあきらめて別の配布方法を検討することになるでしょうね。Group Policy とか SMS とか。
ue
ぬし
会議室デビュー日: 2005/05/07
投稿数: 581
お住まい・勤務地: 広島市
投稿日時: 2006-05-12 14:32
こんにちは。

引用:

そこで、ActiveXコントロールをインストールする際のみ、一時的にインストール権限がある別のユーザー(Administrator)でActiveXをインストールする方法が無いかと考えています。


runas コマンドか何かで IE を管理者権限で起動し、ActiveXコントロールの配布ページを表示させる方法を思いつきましたが如何でしょう。

runas コマンドはパスワードを人間が入力する必要がありますが、フリーソフトにパスワードも含めてユーザに配布できるものがあります。
http://vector.aol.co.jp/soft/winnt/util/se381800.html

バッチファイルはこんな感じです。
c:\RunAs.VBS /u:example\Administrator /p:Password "C:\Program Files\Internet Explorer\IEXPLORE.EXE" "http://www.example.local/activex.html"
ちゃっぴ
ぬし
会議室デビュー日: 2004/12/10
投稿数: 873
投稿日時: 2006-05-12 14:40
引用:
runas コマンドか何かで IE を管理者権限で起動し、ActiveXコントロールの配布ページを表示させる方法を思いつきましたが如何でしょう。



それって、user に Administrator の password を教えてるのと一緒じゃありません?

引用:
runas コマンドはパスワードを人間が入力する必要がありますが、フリーソフトにパスワードも含めてユーザに配布できるものがあります。



これも似たようなもんです。

そもそも、user が administrator の password を知っているなら、管理者権限で install してくださいといえばいいわけですし・・・
toto
常連さん
会議室デビュー日: 2005/10/18
投稿数: 46
お住まい・勤務地: 岡山
投稿日時: 2006-05-12 14:43
ちゃっぴさん早速の、ご返信ありがとうございます。

引用:

ちゃっぴさんの書き込み (2006-05-12 14:23) より:
偽装して install って browser からやろうとしているのでしょうか?
# とりあえず、それって非常に問題だと思いません?



偽装してブラウザーからインストールを行おうとしています。
ちゃっぴさんの言われる通り、非常に問題なのは、ごもっともです。
ただ、今回のWebアプリケーションは閉じられたネットワーク内で使用され(イントラ)る為、特定の方のみが使用されます。
また、使用するクライアント数がそれなりにある為、ブラウザからインストール出来ればと思っております。

やはり、別の方法を考えるほうが得策なのでしょうか。。。

よろしくお願いします。
toto
常連さん
会議室デビュー日: 2005/10/18
投稿数: 46
お住まい・勤務地: 岡山
投稿日時: 2006-05-12 15:10
ueさん、返信ありがとうございます。

引用:

runas コマンドか何かで IE を管理者権限で起動し、ActiveXコントロールの配布ページを表示させる方法を思いつきましたが如何でしょう。

runas コマンドはパスワードを人間が入力する必要がありますが、フリーソフトにパスワードも含めてユーザに配布できるものがあります。
http://vector.aol.co.jp/soft/winnt/util/se381800.html

バッチファイルはこんな感じです。
c:RunAs.VBS /u:exampleAdministrator /p:Password "C:Program FilesInternet ExplorerIEXPLORE.EXE" "http://www.example.local/activex.html"



runasの方法を調べて検討してみます。また、フリーソフトまで教えていただいて、ありがとうございます。


ちゃっぴさん

引用:

そもそも、user が administrator の password を知っているなら、管理者権限で install してくださいといえばいいわけですし・・・



その通りですね。
userに勝手にインストールをされたくないから、権限を与えていないのに、Administratorのパスワードを教えてしまったら。。。
支店の代表者だけにパスワードを教えて、支店の全PCにadministratorでインストールしてもらうとか。。。何とか運用で逃げられれば良いのですが。
渋木宏明(ひどり)
ぬし
会議室デビュー日: 2004/01/14
投稿数: 1155
お住まい・勤務地: 東京
投稿日時: 2006-05-12 22:44
引用:

そこで、ActiveXコントロールをインストールする際のみ、一時的にインストール権限がある別のユーザー(Administrator)でActiveXをインストールする方法が無いかと考えています。



端末のアカウント管理用に ActiveDirectory が導入されているなら、SMS 等を使うことで .msi にパッケージした ActiveX コントロールを一括配布することが可能なはずです。

また、全端末が管理端末からネットワーク的に「見える」のであれば、管理端末から作業端末のタスクスケジューラに対して、共有フォルダに配置した .msi をサイレンとモードで実行するようなバッチを登録することも可能と思います。(それをシステマチックに行うのが SMS の機能の一つですが)

渋木宏明(ひどり)
ぬし
会議室デビュー日: 2004/01/14
投稿数: 1155
お住まい・勤務地: 東京
投稿日時: 2006-05-12 22:50
引用:

フリーソフトにパスワードも含めてユーザに配布できるものがあります。
http://vector.aol.co.jp/soft/winnt/util/se381800.html



この手のツールで使われる暗号化手法はそれほど強固なものではないので、パスワードの流出には十分留意する必要があります。一応念のため。

仮にそういったツールを使用するとしても、通常の管理業務に使用している管理者のアカウントの使用はさけるべきです。

ActiveX コントロールの導入専用のアカウントを作成して管理者グループに参加させ、ActiveX コントロールが全端末に行き渡ったことを確認したらアカウントを停止するくらいの対応が必要と思います。



_________________
// 渋木宏明 (Hiroaki SHIBUKI)
// http://hidori.jp/
// Microsoft MVP for Visual C#
//
// @IT会議室 RSS 配信中: http://hidori.jp/rss/atmarkIT/

スキルアップ/キャリアアップ(JOB@IT)