2016-08-25 21 views
0

C#.NETアプリケーションからロータスノーツの受信ボックス(社内イントラネット内)に暗号化されたメールを送信する方法の開始点を教えてもらえますか?イントラネットWebAppからロータスノーツに暗号化されたメールを送信

私は、サポートから証明書とNotesユーザーを要求しました。

しかし、今私は立ち往生しています。私はこのguideを読んでコードを実装しましたが、受信トレイのメールには内容がありませんが、smime.p7mという名前のファイルがあることがわかりました。だから私はこれが正しい方法であるかどうかは一般的に分かりません。

私にチュートリアルのヒントを教えたり、必要な手順を教えてもらえますか? リンク先のガイドは一般的に正しいですか?何か問題はありますか?この場合、コメントを残してください。自分のコードを追加します。

ありがとうございます!

UPDATE 1(26.08.16):ここで

は、私がこれまでになりましたよです:ノート自体Iチケットで

System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient("smtp.services.companyname"); 
smtp.Credentials = new System.Net.NetworkCredential("NOTESUSER","password"); 
smtp.Send(message); 

"暗号化された私のメールを送信する" のチェックボックス。その背後にある考え方は以下の通りです: ノーツユーザーがこのようにして、資格情報をSmtpサーバーに渡し、ユーザー設定を使用しました。

eMailは配信されますが、暗号化されません。

+0

.p7mファイルは暗号化されたコンテンツです。 Notesユーザーに送信してください。 –

+0

@RichardSchwartzこれはNotesUserのメールインボックスにあります。 –

+0

この場合、送信しているメッセージのMIMEヘッダーに問題があり、Notesが暗号化されたメッセージとして認識できなくなります。メッセージのMIMEソースと、正しくフォーマットされた暗号化メッセージのMIMEソースを比較する必要があります。 Notesユーザーにメッセージを送信するために使用できる暗号化されたメッセージを送信するように構成されたNotes以外のメールクライアントがありますか? –

答えて

0

さて、ここで私は最終的に何をしたかである:それはユーザーでログインし、

Domino.NotesSession nSession = new Domino.NotesSession(); 
nSession.Initialize("secretpassword"); //password for the Notes User 
Domino.NotesDatabase nDatabase = nSession.GetDatabase("SERVER", "names"); //Server and location of the names.nfs file 
Domino.NotesDocument nDocument = nDatabase.CreateDocument(); 
NotesStream nStream; 
nDocument.ReplaceItemValue("Subject", tmp.Subject); 
nBody = nDocument.CreateMIMEEntity();     
nStream = nSession.CreateStream(); 
nStream.WriteText(tmp.Body); 
nBody.SetContentFromText(nStream , "text/HTML;charset=UTF-8", MIME_ENCODING.ENC_IDENTITY_7BIT); 
nDocument.EncryptOnSend = true; 
nDocument.Send(false, user.INS_EMAIL); 

これは、ログインして、最新のノートのユーザーとノートセッションを作成しますが、サーバー上のLotus Notesクライアントをインストールするように。これまでのところ動作します。

1

多分、もう少し細かいことを試みることができます。 Thunderbirdのような基本的なメールクライアントからNotesクライアントで開かれる人に暗号化された電子メールを送信するのはどうでしょうか?

基本的なことは、受信者が暗号化に使用した公開鍵と対称な秘密鍵を持っていなければならないということです。通常の使用では、ドミノは独自の2要素PKIを備えているので、これを非常にうまく実行します。ユーザは秘密鍵なしでサインインすることはできません。その秘密鍵は、ワークステーションに小さなファイル(〜3ko)としてhername.idまたはuser.id。対応する公開鍵は、Dominoディレクトリにすべて表示されます(names.nsf

通常のRSAのものをベースにしていますが、これらの通常の鍵ペアは、Domino固有の方法で管理され展開されます。

ここで、サードパーティの認証局が発行した秘密鍵をインポートすることは、完全に可能です。正確な手続きを今すぐ手に入れていないと、ノーツクライアントのhelp.nsfでそれを見つけることができます。

しかし、私は不思議です。あなたはイントラネット内にあります。つまり、you do have access to the Domino Directory、つまり受信者の通常の公開鍵です。あなたのアプリケーションはおそらくそれ自身のuser.idを必要とし、1352ホールをさまざまなファイアウォールでパンチする必要があるでしょう。ところで、それが何らかの懸念を緩和するのに役立つならば、前述のネイティブPKIによって、ポート1352上の通信をエンドからエンドまで暗号化することは非常に簡単です。

別のオプションは次のとおりです。ドミノサーバーもWebサーバーです。場合によってはこのオプションが有効化されることもあります。そうであれば、ディレクトリをWebアプリケーションとして利用できます。ユーザーの公開鍵をズームインするには、微妙なやりとりとHTML解析が必要ですが、とする必要があります。

ドミトリーは、好きではないかもしれませんが、道路の最後の1つです。ドミノは、イントラネットアプリケーションのための非常に優れたプラットフォームであり、クライアント/サーバーの説得やHTTP信条です。

+0

私の質問を詳細情報で更新します –

+0

LotusNotesは私の会社の電子メールクライアントなので、電子メールクライアントは使用できません。私は自分のアプリケーションから送信された電子メールを暗号化しようとしています(自動生成)。私が本当に必要とするのは、この手順をセットアップするために必要な基本的なステップです。多分、いくつかのコードスニペットを使ってください。暗号化とLotus Notesに関する経験はほとんどありません。 –

+0

それから家でやってください。私の主張は、単純なケースを試し、自動化したいプロセスを控えめにするチャンスを与えることです。 私がもっと一般的なコメントを述べることができるのであれば、暗号は簡単ではありません。ドミノの場合でも、Notesのバージョン1からの厳しいセキュリティがあります。 –

関連する問題