【IRIS】ネットワーク共有フォルダ/ネットワークプリンタの参照方法を教えてください。

ネットワーク共有フォルダ/ネットワークプリンタにアクセスしたい場合、以下の2つの方法があります。

A. net use コマンドを使用する方法
B. IRISの起動ユーザを変更する方法

詳細は以下をご覧ください。
------------------------------------------------------------------------------------------
【方法A】net use コマンドを使用する方法
------------------------------------------------------------------------------------------
1) IRIS からネットワーク共有フォルダへのアクセスを許可する場合、以下のコマンドを実行するように SYSTEM^%ZSTART に記述します。

 net use \\<サーバ>\<共有フォルダ> /user:<ユーザ名> <パスワード>

※^%ZSTART または従来の ^ZSTU は、ユーザのスタートルーチンです。

詳細は以下のページをご参照下さい。
^%ZSTART ルーチンと ^%ZSTOP ルーチンによる開始動作と停止動作のカスタマイズについて

※%ZSTART での記述ミスは IRISの起動不可になりますので、%ZSTARTの単体実行を確認するようにしてください。

また、%ZSTART ルーチンは、ネームスペース %SYS に新規に作成する必要があります。フォーマットは以下になります。

SYSTEM
 Set st = $ZF(-100, "/shell", "net", "use", "\\share\public", "/user:username", "password")
 Quit

 
2) %ZSTART ルーチンを保存+コンパイルしたら、 IRISを再起動します。

<< 注意 >>
ターミナルで実行する場合と、TelnetやJobコマンドで実行する場合では、ユーザ権限が異なります。
==========================================================================================
ターミナル:Windowsログインユーザ
Telnet/Job:IRISサービスの起動ユーザ(既定:LocalSystem)
==========================================================================================

ターミナルはWindowsログインユーザとセッションを共有しているため、事前にWindowsでネットワーク共有フォルダにアクセス済みであれば、IRISで何も設定しなくてもターミナルからのアクセスは可能です。

しかし、Telnet/Job(バックグラウンドジョブ全般※) はIRISサービスのログインユーザとセッションを共有するため、IRISサービスの起動ユーザで net use コマンドを実行する必要があります。

上で紹介しているように、^%ZSTART ルーチンでnet use コマンドを実行することで、Telnet/Job でのアクセスも可能になります。
※ODBC/JDBC接続や、Webアプリケーションで動作するものも含む

----------------------------------------------------------------
【方法B】IRIS の起動ユーザを変更する方法
----------------------------------------------------------------
1) ユーザアカウントを決めます
IRIS のサーバとネットワーク共有をサービスしているサーバに、同じユーザ名/パスワードのアカウントを作成します。
※ユーザアカウントは、Windows Administrators グループのメンバである必要はありません。

2) irisinstall コマンドを使用して IRIS サービスのユーザアカウントを変更します。
IRIS サービスのユーザアカウントを変更するときは、従来のように
「Windowsコントロールパネル>管理ツール>サービス>IRIS Controller for XX」
からIRISサービスの起動ユーザを変更するのではなく、irisinstall コマンドを使用して 変更します。

コマンドは次の通りです。

irisinstall setserviceusername <構成名> <起動ユーザ名> <パスワード>


具体的には、Windows のコマンドプロンプトを「管理者権限で」起動して以下のように実行します。
(ユーザ:username、パスワード:password を使う場合。構成名 IRIS とします)

cd C:\InterSystems\IRIS\bin <-- install dir\bin に移動
irisinstall setserviceusername IRIS username password


<<注意>>
【方法B】の場合も A と同様に、ターミナルでネットワーク共有フォルダにアクセスする場合は、事前にWindowsでネットワーク共有フォルダにアクセスしていることが条件になります。(Windowsログインユーザとセッションを共有しているため)


該当する製品: IRIS Data Platform, HealthShare/IRIS Based, IRIS for Health
関連トピック: InterSystems製品開始時に特定の処理を実行する方法を教えてください。
関連トピック:ファイル用アダプタのファイルアクセスが失敗します。
関連トピック:$ZF(-100)の戻り値に -1 が返って実行できません。なぜですか?
関連トピック:$ZF(-100)の使用方法を教えてください
添付ファイル:

アンケートにご協力をお願いします
このトピックは参考になりましたか?
このトピックに関するお問い合わせ

FAQトップに戻る