次のシナリオを想定します。
1-非常に賢明な情報が同じ物理サーバーにデプロイされているWebアプリ(WEBSERVER1上)とそのデータベース(DBMS1上)(簡略化のために言っておきます)。ユーザーは、特別なセキュリティ対策の傘下でWebアプリを操作します。これらのセキュリティ対策は、Webアプリのユーザーが少数であり、DMBS1とWEBSERVER1が存在する特別なネットワークロケーションを尊重しているという事実を考慮に入れています。適用されたセキュリティ対策の一部(DBMS1のデータとWEBSERVER1へのアクセスを保護するために適用された)は、この条件を満たすユーザーにのみ適用できることを説明するためにこれを言いました。このユーザーのセットをUSERS1と呼びましょう。
2-他のユーザーとアプリケーション(APIエクスポージャーを介して)もDBMS1のアクセスデータ(CRUD)を必要とします(それらをUSERS2と呼びます)が、物理的な場所のために、USERS1に適用したのと同じセキュリティ対策をUSERS2に適用することはできません。ユーザーの数とそれらの制御。さらに、USERS2に許可を適用することは非常に重要です。つまり、USERS2は、アクセスが許可されたDBMS1のデータにアクセスすることができます。
ある同僚は、データに対してUSERS2 CRUDを使用できるように、メインのDBMS1とWEBSERVER1から分離して、異なるDBMS2と異なるWEBSERVER2をデプロイしてセキュリティを強化することを提案しています。私が見る限り、これは、あるDMBSから別のDMBSにデータを同期するメカニズムがあることを意味します。ファイアウォールと資格情報は、DBMS2サーバーが危険にさらされても、侵入者が承認ポリシーに違反してDBMS1にデータを書き込むことができないように設定できます。これをアーカイブするには、USERS2認証設定(DBMS1で指定)と複製されたデータの間のマップである必要があります-DBMS1とDBMS2の間で同期され、データ複製のプロセスはDBMS1のサーバーグループから開始され、DMBS1サーバーにDMBS2にアクセスするための資格情報があります。 DBMS2サーバーは、DBMS1にアクセスする方法について何も知りません。
この種のアーキテクチャの価値は、USERS2が相互作用しているDBMSとWEBSERVER2の展開で見つけた悪用可能なセキュリティホールを分離して含むことにあると思います。
USERS2の資格情報の保護とセキュリティ対策のコンプライアンスは、DMBS1を管理する組織のドメイン外にあることに注意してください。
私の質問は次のとおりです。
この種のアーキテクチャについて書かれた何かが存在しますか?承認ポリシーに応じてDMBS2の作成と変更のプロセスを自動化するためのツール/手順はどうですか?
このアーキテクチャについての助けやオリエンテーション、批評家に感謝します。
説明を裏付ける図を含めています。矢印の方向は、誰がコミュニケーションを開始するかということだけです。グラフィックがひどいことはわかっていますが、いくつかの情報を追加したいと思います。
EDIT:このDBMS-Web_Serverアーキテクチャと DZMデュアルファイアウォール の類似点は明らかです。
私はあなたの質問を理解するのに苦労していますが、答えを試みさせてください。 2つのユーザーグループがあるようです。
また、これらのユーザーは同じデータベースに異なるレベルのアクセスを必要としているようです。
上記が当てはまる場合は、次の構造をお勧めします。
アクセスセットアップ中のデータベースでは、2つのスキーマがあります。
したがって、データベースには次のような4つのテーブルがある可能性があります。
internal.SuperSecretTable
internal.DarkCompanySecrets
external.WhoCares
external.HaveAtIt
2つのユーザーロールもあります:-employee-apiUser
employee
ロールはinternal
スキーマとexternal
スキーマの両方にアクセスできますが、apiUser
ロールはexternal
にのみアクセスできます。スキーマ。これらの役割に、機能するために必要な最低限の権限を付与します。
お役に立てれば!