2

私はパスワードで保護されたmdbアクセスを持っていますが、それは1秒以内にグーグルにある無料のツールによって簡単に解読される可能性があります。いくつかの高価なツールにお金を払うことに加えて、ms accessデータベースファイルを保護する方法に良い方法はありますか?暗号化してからdllを介して復号化し、データを取得してサードパーティのアプリに渡すことを考えています。接続が閉じたら、ファイルを再度暗号化します。

誰かがこの方法の誤謬についてコメントしたい場合、または他のリソース、ツールなどを持っている場合、それは素晴らしいことです。

ありがとう :)

4

7 に答える 7

2

私はすべて、適切な場所でJetを使用することに賛成ですが、NTFSセキュリティとJet ULSで得られる以上のパスワード保護データについて心配し始めると、別のデータストアを使用する必要がある領域にいます。

しかし、私にこれを言わせてください:

セキュリティは技術的な問題ではなく、人の問題です。病気を望んでいる管理者権限を持つユーザーからあなたを保護するセキュリティはありません。データを表示および編集する権限を与えるのに十分な人を常に信頼する必要があります多くの場合、許可されたユーザーが行う可能性のある損傷からデータを保護するようにアプリを設計するのではなく、許可されていないユーザーをデータから遠ざける方法に重点が置かれます。前者は非常に簡単ですが、後者はセキュリティ設定だけでなく、アプリの設計方法にも細心の注意を払う必要があります。

そして最終的には、責任を持って行動するために人々を信頼する必要があり、JetやSQLServerがそれを支援するためにできることは何もありません。

于 2009-05-07T23:08:41.393 に答える
2

Access は古いデータベースですが、なぜ SQL Express 2005 ではないのでしょうか (魔女は無料です)。セキュリティについてさらに詳しく知ることができ、アプリケーション内で接続にユーザー/パスワードを使用しますが、これは誰も知らず、見ることもできません... SQLを開こうとすると、データベース名のみが表示され、他には何もありません (Windows 認証ではなく SQL 認証を使用することを忘れないでください)

.NET を使用している場合は、セットアップで、SQL 2005 Express のインストール後にのみアプリケーションをインストールするように指示できます。または、他の言語を使用している場合は、InstallShield、FinalBuilder などを使用して同じことを行うことができます...

:)

1 つのテーブルに 30,000 行を超える行があると Access の応答時間が遅くなり始め (Microsoft からの引用)、データを暗号化/復号化するためのレイヤーを作成する場合.. . あなたのアプリは遅くなり、まったく動作しなくなります ... これでよろしいでしょうか?

于 2009-05-07T07:57:13.083 に答える
1

MDB形式からACCDB(Access2007)形式への更新はどうですか?

Access2007のセキュリティを開始する

「OfficeAccess2007の暗号化ツールは、データベースパスワードとエンコーディングという2つの古いツールを組み合わせて改良しています。データベースパスワードを使用してデータベースを暗号化すると、他のツールですべてのデータを読み取れなくなり、ユーザーにパスワードの入力を強制します。データベースを使用してください。Access2007で適用される暗号化は、以前のバージョンのAccessで使用されていたものよりも強力なアルゴリズムを使用しています...」

于 2009-05-07T08:32:48.940 に答える
1

データを保護しようとしているだけなのか、VBAコードなどを排他的に保護しようとしているのか、私はあなたの投稿を読むのがわかりません。mdbファイルがあるとのことですが、Access 2003、2007、またはその他のバージョンを使用していますか?アクセスソリューションをイントラネットサイトに展開することを計画していますか?(以下の私のコメントでは、あなたがそうであると仮定します)。

Accessベースのソリューションを展開する前に他のソリューションを検討する機会があれば、他のポスターに同意します。ただし、Accessベースのソリューションを避けられない場合は、次の提案やコメントを共有したいと思います。

  1. Access 2003を使用している場合は、ユーザーおよびグループレベルのセキュリティを検討することをお勧めします(Access 2007(accdb)形式のデータベースではユーザー/グループレベルのセキュリティのセットアップと構成は利用できませんが、Access2007はmdbファイルからユーザー/グループのアクセス許可を認識します。ユーザー/グループレベルのセキュリティを使用すると、定義されたユーザーとワークグループに基づいてデータベースへのアクセスを制限できます。詳細については、[ http://office.microsoft.com/en-us/access/HP051882261033.aspx] [1]

  2. データベースを分割する(フォーム、レポートなどのアプリケーションオブジェクトからデータを分離する)か、使用可能なオブジェクトを制限するさまざまなバージョンを作成することを検討してください。

  3. 設計用のマスターと本番用のレプリカを保持します。これは、すべてがテイクのテーブルにあるわけではないという考えである前のコメントと一致しています。2003年と2007年に利用可能なAccessDeveloperExtensions(まだ行っていない場合)を調べることをお勧めします(Microsoftから無料でダウンロードしてインストールできます)。

  4. 可能な場合は常に、スタッフまたは同僚のアクセスを阻止および/または制限するポリシーを採用します(ここでも、企業のイントラネットに導入していると想定しています)

  5. データベースをエンコードします。これにより、テーブルのプロパティ情報が作成され、データベースが圧縮され、設計レベルの情報が削除されるかアクセスが困難になるため、VBAコードの取得が困難になります。

  6. 最後に、時間、リソース、および/またはコピーが利用可能な近くの図書館/書店がある場合は、AlisonBalterのマスタリングMicrosoftOfficeAccess2003をチェックすることをお勧めします。マルチユーザーおよびエンタープライズアプリケーションの開発に関するセクションをチェックしてください。セキュリティに関するセクション。ACCESS 2007用に更新:AlisonBalterのMasteringMicrosoft®OfficeAccess2007 Development

于 2009-05-07T09:34:19.620 に答える
0

デスクトップアプリの場合は、 SQL Server Compact Edtition(SQLCE)のルートを使用することをお勧めします。または、少しお金があれば、VistaDB(SQLCEとは異なり、ストアドプロシージャ、ビュー、トリガーをサポートします)。セキュリティが向上し、パフォーマンスが向上し、メンテナンスや破損の手間が減り、導入が容易になります。

于 2009-05-07T08:39:17.770 に答える
0

どのような方法を使用しても、知識のある人がクラックできます。

それは、データの価値に大きく依存します。本当に価値がある場合は、データベースをインターネット上のサーバーの背後に配置するなど、別のモデルを使用します。次に、クエリの数を制限したり、誤用をフィルタリングしたりできます。

リークが追跡できる場合、または使用が制限されている場合は、ライセンス契約でデータを保護することをお勧めします. 少なくとも、損失を回復する方法があるかもしれません。OEDは最近、コピー保護を解除したことに注意してください。

将来のことも考慮してください。10 年以内に一部のネットワーク管理者が合法的にデータにアクセスする必要が生じる可能性があります。単純なパスワードを使用すると、データを保護する必要があることが示されますが、それでも迂回が許可されます。

于 2009-05-07T08:01:45.880 に答える