- - PR -
ネット経由でのC/Sシステムについて
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2009-04-10 10:16
いつもお世話になっております、たもと言います。
新規ではじめるプロジェクトで以下のようなC/Sシステムを予定してるのですが 構築にあたって助言を頂きたくお願い致します。 開発環境:VB2008 メインDBサーバ:SQLServer2005 ユーザの環境が非ローカルネットワーク下の為、 PGはローカルにDBを持ちスタンドアロンで動かす必要がある。 (事務所に帰ればインターネット環境には接続出来る) =========================================================================== 1.メインDBにあるマスタデータをダウンロードしてローカルに落とす。 2.スタンドアロンでシステム運用。 3.ローカルで発生したデータをメインDBにアップロードする。 =========================================================================== 上記のような流れを実践したいと思っています。 プログラム自体はClickOnceのWEBサーバー経由で配布予定で、 ローカルDBには[mdb]or[SQL Compact 3.5]を使ってみようと思っています。 質問はメインDBとローカルDBのやり取りの部分なのですが、 セキュリティ問題から、メインサーバのネット経由でのアクセスは どうしても許可が貰えませんでした。 こうなってくると、 メイン側で差分データファイルを作成するようなPGを起動させておき ローカル側でその差分ファイルを毎回確認し、 ダウンロード→ローカルDBに反映のようなウィルスソフトのような流れ にするしか方法は無いのでしょうか? それとも他にいい方法があるでしょうか? また、仮に差分ファイルでの方法がベターである場合に そのやり取りはどういう形で行うのが良いのか助言を頂けると幸いです。 以上、よろしくお願いいたします。 | ||||
|
投稿日時: 2009-04-10 10:29
Sync Frmaework使ってみるとか。
http://msdn.microsoft.com/en-us/sync/default.aspx 触ったことないので、実際に使えるかどうかわかりませんが。 | ||||
|
投稿日時: 2009-04-14 09:32
to どっとねっとふぁんさん
ご返事ありがとうございます Sync Frameworkなるものがあるのですね。 教えていただいたURLよりチェックしてみます 有難うございました その他の方法もご存知の方がいらっしゃったら 些細な事でも良いのでよろしくお願いします | ||||
|
投稿日時: 2009-04-14 11:04
最初、要件が良く分からなかったのですが、3回ほど読んだら分かりました。 「ウィルスソフト」とは「ウィルス対策ソフト」ということですよね? なお、おっしゃる「セキュリティ問題」は、なにを目的としたものなのでしょうか?DB に API でアクセスするのはダメだけど、ファイル経由なら良い、というようなことなのでしょうか? また「差分」を作るためには、更新前と更新後の両方の情報が必要です。「サーバー」側で「差分」を作り出すためには、「ローカル」側で更新した情報をなんらかの方法で「サーバー」に伝えないことには無理だと思います。この点はどう解決されるつもりなのでしょうか? | ||||
|
投稿日時: 2009-04-14 11:26
To. unibonさん
書き込み方がわかり辛くて申し訳ありません 仰るとおり、ウィルスバスターの定義ファイルの様なイメージでした。 セキュリティ問題ですが、これも仰る通りで プログラムからネット経由で直接SQLServerと接続するのは駄目と言われ ファイルに落とすなどのワンクッションを置いてくれとのことです。 差分に関してですが 現段階ではサーバとローカルの差分は必要ではないので サーバ側のマスタデータの差分(新規追加および変更分)を 定期的に出力するプログラムがあれば良いかなと思っています。 | ||||
|
投稿日時: 2009-04-14 12:01
>ネット経由で直接SQLServerと接続するのは駄目
SQLインジェクション対策ですか? 以下の構成にVPN併用すれば、充分だと思われますが。 外部から直接SQLを叩くことはできません。 外部のクライアントはVNCのみで、作業性やデータのセキュリティも向上します。 (Net)------Client(VNC) | | [Router] | [Firewall]----DMZ_Client(VNCサーバ) | └---SQLサーバ ネットの脅威は、ネットの仕組みで回避したいものです。 注)外部クライアントが多いほど、DMZの負担が大きくなります。 ここでは、若干名の外部クライアントを想定しています。 _________________ _福田太郎_ | ||||
|
投稿日時: 2009-04-15 09:31
To.たらおさん
今回非ネットワークなのは 作業者が不特定多数で非社員の方も含まれるそうで その為に社内ネットワークを使いたくないとの事でした よってVPN経由も許可されない可能性が高そうですが 手法としては参考になりました。 ありがとうございました | ||||
|
投稿日時: 2009-04-15 19:48
これ、最初に欲しいね。 複数の作業者が、同じデータを、違う値に書き換えていたら、どうなりますか? 普通、「最初勝ち」(楽観的排他制御)ですが、作業者が戻ってきて登録という作業なので、「最後勝ち」になりますね。 作業 PC のデータベースに対する query を全て保存しておき、バッチ実行というのが簡単かも?作業記録も残るし。 |