外部から添付ファイルの名前変更されたとNo.29666
(け) さん 06/12/27 23:45
 
こんばんは、(け)です。

先日も会社のセキュリティポリシが厳しくなって・・・
ということで要望をあげさせていただいたばかりなんですが、
また、質問というか、お願いがあるのです。

会社でファイルの自動暗号化ツールを使っています。
このツールは予め任意のフォルダを指定しておくと、
そのサブフォルダ配下を定期的に自動巡回して、
暗号化されていないファイルを見つけると、
片っ端から暗号化してくれます。

暗号化されると、xxxxx.doc というファイルなら xxxxx.doc.enc
という感じにリネームされます。(xxxxx.doc は無くなる)
で、暗号化ファイルを参照するときは復号して、
xxxxx.doc ファイルを参照することができます。
(そして、復号したファイルも再び定期的に暗号化される)

うちの会社では、「マイドキュメント」フォルダを暗号化対象に
指定することが義務付けられました。



前置きが長くなりましたが、
やりたいことは、秀丸メールの添付ファイルを
このツールで自動的に暗号化したいのです。

つまり、添付ファイルが格納されるフォルダ「受信添付」配下を
暗号化ツールの対象にしたいのです。

すると、自動暗号化が走ると、
1)添付ファイル yyyyy.hoge は yyyyy.hoge.enc にリネームされる。
2)X-Attach: は yyyyy.hoge のままなので、
    「この添付ファイルは削除されました」になる。
   
そこで、要望なのですが、
1)「この添付ファイルは削除されました」のメニューに、
   「そのフォルダをエクスプローラで開く」というメニューを
   追加して欲しいです。
   X-Attach:を見て、手動でそのフォルダを探せば良いのですが、
   メニューから一撃で開けると非常に快適と思います。
2)ファイルがリネームされて「この添付ファイルは削除されました」
   の状態で、「バックアップのお手伝い」や、アカウント間の
   メールの移動を行うと、リネームされたファイルやそれを格納する
   添付ファイルフォルダが作成されません。
   添付ファイルフォルダ内にリネームされたファイルが残っているときは、
   移動先のアカウントでも添付ファイルフォルダを作成して、
   リネームしたファイルも移動してほしいです。
   (移動先でも、「この添付ファイルは削除されました」で良い)

と、長々と書いてしまいましたが、こんなことはできるでしょうか。

[ ]
RE:29666 外部から添付ファイルの名前変更No.29668
三月 さん 06/12/28 07:14
 

>暗号化されると、xxxxx.doc というファイルなら xxxxx.doc.enc
>という感じにリネームされます。(xxxxx.doc は無くなる)
>で、暗号化ファイルを参照するときは復号して、
>xxxxx.doc ファイルを参照することができます。
>(そして、復号したファイルも再び定期的に暗号化される)
>

>1)「この添付ファイルは削除されました」のメニューに、
>   「そのフォルダをエクスプローラで開く」というメニューを
>   追加して欲しいです。
>   X-Attach:を見て、手動でそのフォルダを探せば良いのですが、
>   メニューから一撃で開けると非常に快適と思います。


実際に試してはいないですが、下記のようなマクロで
ファイル名を変えてしまえば良いのでは?
秀丸メール本体で該当メールを選んで実行する想定で。
-----------------
loaddll "TKInfo.dll";

#n = dllfunc("CountCurrentHeader", "X-Attach");
#a = 0 ;
// X-Attachのループ
while(#a < #n ){
 $Attach = dllfuncstr("CurrentHeader2", "X-Attach", #a );
 if( existfile($Attach) == false ){
  // 添付ファイルが存在しない場合
  if( existfile($Attach + ".enc") == true ){
   // エンコード済みファイルは存在
   goto l_change;
  }
 }
 #a =#a +1;
}
// 書き換える場所がないので終わる
endmacro;

// 書き換える必要がある場合 ====
l_change:
// メールをエディタで開いて改変可能にする
#x = dllfunc( "OpenMail" );
if( readonly ){
 #x = dllfunc( "EnableEdit" ) ;
}
#v = dllfunc("HeaderView") ;
#n = dllfunc("SwitchHeaderView", 2);
moveto 0, 0;

#a = 0 ;
// X-Attachのループ
while(#a < #n ){
 $Attach = dllfuncstr("CurrentHeader2", "X-Attach", #a );
 if( existfile($Attach) == false ){
  // 添付ファイルが存在しない場合
  if( existfile($Attach + ".enc") == true ){
   // エンコード済みファイルは存在
   // ファイル名の書き換え
   #n = dllfunc( "SetHeader2", "X-Attach", $Attach + ".enc", #a );
  }
 }
 #a =#a +1;
}

//保存
save;
#n = dllfunc("SwitchHeaderView", #v);
#whd = hidemaruhandle( 0 );
#x = dllfunc( "SetMainWndTop" );
closehidemaru #whd;
#tmp = dllfunc( "SetMailFlag", "altered", 0 );//改変フラグ OFF


[ ]
RE:29668 外部から添付ファイルの名前変更No.29679
秀まるお2 さん 06/12/28 15:33
 
 名前が変更されて添付ファイルへのリンクが切れてしまってることが分かれば、
マクロを使うなどしてリンクを修正する(X-Attach:ヘッダを書き換える)こと
は可能です。三月さんのマクロでもいいですが、いちいちエディタで開くよりは、
以下のマクロの方がいいかもしれません。

 あと、三月さんのマクロには1つバグがあったのでそれも直しています。

----------------------------------------
loaddll "TKInfo.dll";

#n = dllfunc("CountCurrentHeader", "X-Attach");
#a = 0 ;
$Root = dllfuncstr("HomeDir") + dllfuncstr("CurrentAccount") + "\\";
// X-Attachのループ
while(#a < #n ){
 $Attach = dllfuncstr("CurrentHeader2", "X-Attach", #a );
 $Attach2 = $Root + $Attach;
 if( existfile($Attach2) == false ){
  // 添付ファイルが存在しない場合
  if( existfile($Attach2 + ".enc") == true ){
   // エンコード済みファイルは存在
   goto l_change;
  }
 }
 #a =#a +1;
}
// 書き換える場所がないので終わる
endmacro;

// 書き換える必要がある場合 ====
l_change:
message "l_change";
// メールをエディタで開いて改変可能にする
#x = dllfunc( "BeginEditMail" );
#a = 0 ;
// X-Attachのループ
while(#a < #n ){
 $Attach = dllfuncstr("CurrentHeader2", "X-Attach", #a );
 $Attach2 = $Root + $Attach;
 if( existfile($Attach2) == false ){
  // 添付ファイルが存在しない場合
  if( existfile($Attach2 + ".enc") == true ){
   // エンコード済みファイルは存在
   // ファイル名の書き換え
   #n = dllfunc( "SetHeader2", "X-Attach", $Attach + ".enc", #a );
  }
 }
 #a =#a +1;
}
#x = dllfunc("SaveEditMail",0,0);
#x = dllfunc( "SetMailFlag", "altered", 0 );//改変フラグ OFF
----------------------------------------

 マクロの作り方によっては、すべてのメールや、またはフォルダ中のすべての
メールを対象にとか、いろいろ出来ますけど…。

 あと、添付ファイルのマウス右ボタンメニューに「リンク先を探す...」って
コマンドを追加します。

[ ]
RE:29679 外部から添付ファイルの名前変更No.29680
秀まるお2 さん 06/12/28 16:06
 
>  あと、添付ファイルのマウス右ボタンメニューに「リンク先を探す...」って
> コマンドを追加します。

 「フォルダを開く」にします。

[ ]
RE:29679 外部から添付ファイルの名前変更No.29681
三月 さん 06/12/28 16:28
 
> あと、三月さんのマクロには1つバグがあったのでそれも直しています。

やはり、試してみないとは無責任すぎでしたかね。
(ちょっと反省)


[ ]
RE:29680 外部から添付ファイルの名前変更No.29688
(け) さん 06/12/28 21:47
 
(け)です。

三月さん、秀まるおさん、
マクロ作っていただいてありがとうございます。
見事にX-Attachが変更されました。

でも、実は X-Attach は変更せずに、
そのフォルダを開いて、暗号化されたファイルを触りたいのです。

>>  あと、添付ファイルのマウス右ボタンメニューに「リンク先を探す...」って
>> コマンドを追加します。

> 「フォルダを開く」にします。

ということで、「フォルダを開く」を期待して待たせてもらいます。


あとあと、もとメールで書いた、

2)ファイルがリネームされて「この添付ファイルは削除されました」
   の状態で、「バックアップのお手伝い」や、アカウント間の
   メールの移動を行うと、リネームされたファイルやそれを格納する
   添付ファイルフォルダが作成されません。
   添付ファイルフォルダ内にリネームされたファイルが残っているときは、
   移動先のアカウントでも添付ファイルフォルダを作成して、
   リネームしたファイルも移動してほしいです。
   (移動先でも、「この添付ファイルは削除されました」で良い)
   
もお願いできないでしょうか。

お願いばかりで恐縮ですが、よろしくお願いします。

[ ]
RE:29688 外部から添付ファイルの名前変更No.29691
(け) さん 06/12/28 22:48
 
(け)です。たびたびすみません。

>> 「フォルダを開く」にします。

β11で確認しました。OKでした。ありがとうございます。

>あとあと、もとメールで書いた、
>
>2)ファイルがリネームされて「この添付ファイルは削除されました」
>   の状態で、「バックアップのお手伝い」や、アカウント間の
>   メールの移動を行うと、リネームされたファイルやそれを格納する
>   添付ファイルフォルダが作成されません。
>   添付ファイルフォルダ内にリネームされたファイルが残っているときは、
>   移動先のアカウントでも添付ファイルフォルダを作成して、
>   リネームしたファイルも移動してほしいです。
>   (移動先でも、「この添付ファイルは削除されました」で良い)
>   
>もお願いできないでしょうか。

こっちは、違うアカウントに移動すると、
添付ファイルフォルダは移動されずに、
フォルダごと削除されちゃうので、
改造して欲しいです。

よろしくお願いします。

[ ]
RE:29691 外部から添付ファイルの名前変更No.29692
秀まるお2 さん 06/12/28 23:27
 
 基本的に、X-Attach:ヘッダでリンクされてない添付ファイルまでコピーして
くれと言われても、それは無理な話だと、開発者としては思ってしまう所ですが
…。まぁ絶対出来ないとまでは言えないので、それなりにトライしてみてもいい
かもしれませんが。

 なんちゅうか、その、XXXX.docってファイルがバックグラウンドの処理で(=
どのタイミングで変わるかも分からずに)勝手にXXXX.doc.encになるという、そ
れ自体、かなり乱暴な処理だと思うんですよね。それで具合が悪いからと、メー
ルソフトの開発元にお願いするというのもなんちゅうか、「言いやすい方にとり
あえず言ってみるか」ってことで来てる話のような気がしないでもないですが…
(っとまで言い切ってしまうのも失礼ですが)。

 そもそも、そういう「とりあえず暗号化しとけ」的なことになぜなったのか自
体、僕は事情を知らないのであんまり難しいことは言えませんけど、もし可能な
らば、そういう仕組みはを考えた人に、「例えばこういうソフトでこんな不都合
なことがありますが、それでもやれとおっしゃいますか」みたいに聞いてみる訳
にはいかない物でしょうか。

 もしかしたら、単にそういう「.enc」方式暗号化の考案者の知識不足があって、
例えばハードディスクが盗まれて情報漏洩がどうのこうのって話であれば、NTFS
パーティション自体を暗号化する機能がWindowsXPにあったりするし、PGPdiskと
かいうドライバーだかソフトだかもあるそうだし、何かこう、アプリケーション
ソフトに影響しないような形でうまくやるソリューションがあるんじゃないかと
思ったりします。

[ ]
RE:29692 外部から添付ファイルの名前変更No.29694
(け) さん 06/12/29 06:16
 
(け)です。

X-Attachからフォルダを特定できそうかなぁ、と思って、
軽い気持ちでお願いしてしまいました。
そもそも、削除された扱いになっている添付ファイルまで
「移動させろ」とは無茶苦茶ですよね。すみませんでした。

いちおう、うちの会社では、
情報漏洩対策として、HDD自体の暗号化は義務付けられています。
その上で、さらに秘密文書のファイルは別のツールで
暗号化することも義務付けられています。
二重に暗号化しろ、ってことです。
両方とも全社で使用するツールを指定されています。
実際には、MS Office 2003 の ARMSも導入しているので、
三重にガードをかけろ、ってことになっています。

しかし、どのメーラーもメールボックスを暗号化する対策が、
今のところ無いようでメールボックスについては、
(HDDが暗号化されている前提で)暗号化をしなくても
やむをえないという曖昧な指示になっています。

ちなみに、メーラーも推奨品が指定されていますが、
過去のメール資産などもあるし、使い勝手が生産性に大きく影響するので、
暗号化ツールのように絶対これを使えとまでは、今のところ
義務付けられていないです。

で、私は鶴亀を使わせていただいているわけですが、
鶴亀なら、会社指定のファイル暗号化ツールと組み合わせて、
少なくとも添付ファイルは暗号化しても使えそうかなぁ、
と思いついて、お願いしちゃったわけです。

これができれば、社内で鶴亀の輪をちょっと広げられるかなぁと。

できれば、かつ、普通に使っている方に不都合がでなければ、
ちょっとだけ検討してもらえませんでしょうか。

結局、お願いしていますね。すみません。

[ ]
RE:29694 外部から添付ファイルの名前変更No.29697
h-tom さん 06/12/29 07:39
 

h-tom です。

>X-Attachからフォルダを特定できそうかなぁ、と思って、
>軽い気持ちでお願いしてしまいました。
>そもそも、削除された扱いになっている添付ファイルまで
>「移動させろ」とは無茶苦茶ですよね。すみませんでした。
<省 略>
>できれば、かつ、普通に使っている方に不都合がでなければ、
>ちょっとだけ検討してもらえませんでしょうか。
>
>結局、お願いしていますね。すみません。

ところで、何故「X-Attach」を書き換えるのがダメなんでしょうか?
書き換えれば、なんの問題もないように思いますが。

まぁ、暗号化する前に移動とかすると問題有りそうですが、暗号化ソフトの
都合にあわせろってのも無理な話ですし。

いっそのこと、添付ファイルはアカウントとか関係ない場所に集めて、
そこのショートカットをメールに添付しておくとか?

[ ]
RE:29697 外部から添付ファイルの名前変更No.29698
(け) さん 06/12/29 08:16
 
(け)です。

>ところで、何故「X-Attach」を書き換えるのがダメなんでしょうか?
>書き換えれば、なんの問題もないように思いますが。

そうですね・・・
X-Attachの書き換え自体はダメじゃないです。
書き換えてしまえば、アカウント間の移動も問題ないですから、
そうします。

ちなみに、暗号化ソフトの都合で、
復号するときに、そのフォルダを開いて操作する必要があるので、
「フォルダを開く」は便利に使わせていただこうと思います。


>
>まぁ、暗号化する前に移動とかすると問題有りそうですが、暗号化ソフトの
>都合にあわせろってのも無理な話ですし。

はい、ごもっともです・・・

>
>いっそのこと、添付ファイルはアカウントとか関係ない場所に集めて、
>そこのショートカットをメールに添付しておくとか?

なるほど。

Message-IDか何かでフォルダを作って、そっちに移動したり、
そっちのフォルダを開いたりするマクロも良いかもしれません。

考えて見ます。

無理なお願いをして、すみませんでした。

[ ]
RE:29698 外部から添付ファイルの名前変更No.29699
三月 さん 06/12/29 09:42
 
>ちなみに、暗号化ソフトの都合で、
>復号するときに、そのフォルダを開いて操作する必要があるので、
>「フォルダを開く」は便利に使わせていただこうと思います。

普通その手のソフトって、ショートカットにD&Dで送れば
勝手に処理してくれたりしませんか?

そもそも、.encに関連付けすればそのソフトで開いてくれるとか・・

具体的な名前があがると知ってるヒトがいるかもしれないです。

[ ]
RE:29699 外部から添付ファイルの名前変更No.29700
(け) さん 06/12/29 10:36
 
>そもそも、.encに関連付けすればそのソフトで開いてくれるとか・・
>具体的な名前があがると知ってるヒトがいるかもしれないです。

ありがとうございます。

実は、拡張子は別の文字列なんです。
ツール名を書いちゃうのは、もしかすると会社的にまずいかもしれないので、
伏せさせて下さい。
というか、セキュリティポリシを書いてしまっているのもまずかったかも・・・

D&Dで、うまいこと処理してくれないか、
年明けに会社に行ったらやってみようと思います。

私のこんなワガママにお付き合いいただきありがとうございました。

[ ]
RE:29700 外部から添付ファイルの名前変更No.29702
秀まるお2 さん 06/12/29 12:28
 
 X-Attach:ヘッダで指定された添付ファイルがリンク切れになっている場合で、
そのリンク切れファイルがあるはずのフォルダだけは存在しているようなケース
に限って、指定されたフォルダ中のファイルをまるごとコピーするような処理な
らやってもいいかなぁと思います。そういう処理であれば、特別なオプション追
加も必要無いし、普通に使う分には遅くもならないです。

 ということで、そういう処理だけやる予定ということにさせていただきます。

 (やってみてやっぱり遅くなるならやめるかもしれませんけど)

[ ]
RE:29702 外部から添付ファイルの名前変更No.29703
(け) さん 06/12/29 13:12
 
> ということで、そういう処理だけやる予定ということにさせていただきます。
>
> (やってみてやっぱり遅くなるならやめるかもしれませんけど)

ワガママ聞いていただいて、ありがとうございます。

[ ]
RE:29703 外部から添付ファイルの名前変更No.29740
秀まるお2 さん 07/01/06 21:57
 
 ちなみにこの件ですが、V4.70β13にて対応しました。

[ ]
RE:29740 外部から添付ファイルの名前変更No.29753
(け) さん 07/01/07 06:17
 
(け)です。

> ちなみにこの件ですが、V4.70β13にて対応しました。

β13で試してみたのですが、やはりアカウント間を移動すると、
添付ファイル用のフォルダもファイルもなくなってしまいます。

自宅で以下のテストをしてみました。

1)秀丸メールで、ファイルを添付したメールを作成して送信。
2)1)のメールを秀丸メールで受信
3)「フォルダを開く」でフォルダを開く
4)添付ファイルの拡張子を変更
5)秀丸メールが添付ファイルが削除されたと認識したことを確認
6)別のアカウントにそのメールを移動
7)そのメールの添付ファイルの「フォルダを開く」をすると
  「添付ファイル用のフォルダが削除されているようです」と
  エラーがでる。

という具合です。

[ ]
RE:29753 外部から添付ファイルの名前変更No.29759
秀まるお2 さん 07/01/07 13:53
 
 すみません。僕の所で今やってみたらダメでした。ちゃんと直してテストした
はずだったんですけど…。

 とにかく修正させていただきます。

[ ]
RE:29759 外部から添付ファイルの名前変更No.29791
(け) さん 07/01/09 20:17
 
(け)です。

4.71で確認しました。バッチリOKでした。
重箱の隅をつつくような要望に対応していただいて、
本当にありがとうございました。

[ ]