する質問をすることでしか得られない、回答やアドバイスがある。6windows環境のC#ローカルアプリケーション(パッケージ配布型)をクラウド上のDB/WEBサービスとセキュアに接続するシステム設計についてみなさまのお知恵を拝借させてください。当方、WEBアプリの開発経験しかなく、ローカルアプリケーション(パッケージ配布型)と接続するようなシステムの設計・構築経験が全くございません。・アプリケーションの一部の機能では、特定のWEBサービスをAPI経由で呼び出す必要がある。ローカルアプリケーション自体にDB接続情報とWEBサービス接続情報を?セキュアに?持たせる。+ユーザー認証に使用されるユーザーによる入力値のID/パスワードをクライアントシステム/WEBサービスAPIの認証に使用する(クライアントシステム/WEBサービスAPIサーバー側それぞれで、DBのユーザー情報を問い合わせ認証する)。ローカルアプリケーション自体にDB接続情報のみ?セキュアに?持たせる。+ユーザー認証に使用されるユーザーによる入力値のID/パスワードをクライアントシステム/WEBサービスAPIの認証に使用する(クライアントシステム/WEBサービスAPIサーバー側それぞれで、DBのユーザー情報を問い合わせ認証する)。※1との違いは、WEBサービス接続情報(URLやHTTPメソッドの種類)をDBから問い合わせるようにする点。ローカルではWEBサービス接続情報は保持しないようにする。ローカルアプリケーション自体にWEBサービス接続情報のみ?セキュアに?持たせる。+ユーザー認証に使用されるユーザーによる入力値のID/パスワードをWEBサービスAPI/クライアントシステムの認証に使用する(WEBサービスAPIサーバー/クライアントシステム側それぞれで、DBのユーザー情報を問い合わせ認証する)。※1,2との違いは、DB接続情報をWEBサービスから問い合わせるようにする点。ローカルではDB接続情報は保持しないようにする。ローカルアプリケーション自体にWEBサービス接続情報のみ?セキュアに?持たせる。+ユーザー認証に使用されるユーザーによる入力値のID/パスワードをWEBサービスAPIの認証に使用する(WEBサービスAPIサーバー側で、DBのユーザー情報を問い合わせ認証する)。クライアントシステムから直にDB接続は行わない全ての機能(DBデータのCRUDに絡む処理)をWEBサービスAPI化し、クライアントシステムはそのAPIを呼び出すようにする点。現時点では、DBの接続情報が決して露見することない4が一番安全なような気がしていますが。調べてみてはいるんですが確証が持てずにおります。お助けいただけると幸いです。・toBなシステムになります。・サーバーサイドのインフラ構成は自由に決められますが、クライアントパッケージの導入マシーンは、"ざっくり"アプリが動く最低要件のみ提示可能というイメージです。attachmentクリップ1気になる質問をクリップするクリップした質問は、後からいつでもマイページで確認できます。クリップした質問に回答があった際、通知やメールを受け取ることができます。自分も答えを知りたい質問者以外のユーザにも役立つ評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。質問の評価を上げたことを取り消します低評価-評価を下げられる数の上限に達しました評価を下げることができません1日5回まで評価を下げられます1日に1ユーザに対して2回まで評価を下げられます質問の評価を下げるteratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。コメントをしてください。送信する質問の評価を下げる機能の利用条件この機能を利用するためには、以下の事項を行う必要があります。19:48おそらく色々なパターンがあると思いますが、エンタープライズ向けなのかコンシューマ向けなのか(不特定多数のユーザが使用する?)・インフラ構成を決めれるのかどうか、も重要な要素のような気がします。色々なパターンがあると思いますが、エンタープライズ向けなのかコンシューマ向けなのか(不特定多数のユーザが使用する?)・インフラ構成を決めれるのかどうか、も重要な要素のような気がします。20:01以下の内容を、追記させていただきました。・toBなシステムになります。・サーバーサイドのインフラ構成は自由に決められますが、クライアントパッケージの導入マシーンは、"ざっくり"アプリが動く最低要件のみ提示可能というイメージです。以下の内容を、追記させていただきました。・toBなシステムになります。・サーバーサイドのインフラ構成は自由に決められますが、クライアントパッケージの導入マシーンは、"ざっくり"アプリが動く最低要件のみ提示可能というイメージです。評価が高い回答ほどページの上位に表示されます。remove低評価0回答の評価を下げる下記のような回答は推奨されていません。評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。commentコメント投稿link0私も4をお勧めします。.NETアプリは逆アセンブル(人によっては逆コンパイルとかデコンパイルと言いますが)が簡単にできてしまうので、可読性は落ちるものの、実行ファイルをソースファイルに戻して動きを追うようなことをされないとも限りません。生のIDやパスワードを保持するようなことはないと思いますが、ログイン処理を行う箇所が見えてしまうので、セキュリティの面からもそういったものをできるだけ持たせない作りにしておく方が安全だと思います。評価が高い回答ほどページの上位に表示されます。remove低評価0回答の評価を下げる下記のような回答は推奨されていません。評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。頂いたご意見への回答は行っておりません。