access 2007 以降で access 2003 のユーザーレベルセキュリティを設定または変更する

注: 最新のヘルプ コンテンツをできるだけ早く、お客様がお使いの言語で提供したいと考えております。 このページは、自動翻訳によって翻訳されているため、文章校正のエラーや不正確な情報が含まれている可能性があります。 私たちの目的は、このコンテンツがお客様の役に立つようにすることです。 お客様にとって役立つ情報であったかどうかを、このページの下部でお知らせください。 簡単に参照できるように、こちらに英語の記事があります。

access 2007 より前のバージョンの access でデータベースを作成し、そのデータベースにユーザーレベルのセキュリティを適用した場合、これらのセキュリティ設定は access 2007 以降で開くとその場で維持されます。 また、Microsoft Office access 2003 で提供されているセキュリティツール (ユーザーレベルのセキュリティウィザードと、ユーザーとグループのさまざまなアクセス許可のダイアログボックス) は、access の新しいバージョンから起動できます。 この記事では、access 2003 のセキュリティ機能のしくみについて説明します。また、access 2007 以降で access を起動して使用する方法についても説明します。

注: この記事の情報は、Access 2003 以前のバージョン (.mdb ファイル) で作成されたデータベースにのみ適用されます。 ユーザーレベルのセキュリティは、Access 2007 またはそれ以上 (.accdb ファイル) で作成されたデータベースでは使用できません。 また、.mdb ファイルを新しい形式 (.accdb ファイル) に変換すると、ユーザーレベルのセキュリティ設定が破棄されます。

この記事の内容

Access 2007 以降でのユーザーレベルセキュリティの動作

Access 2003 のユーザーレベルセキュリティの概要

ユーザーレベルのセキュリティを設定する

ユーザーレベルのセキュリティを削除する

オブジェクト権限のリファレンス

Access 2007 以降でのユーザーレベルセキュリティの動作

access 2007 以降のバージョンでは、access 2003 およびそれ以前のファイル形式 (.mdb および .mde ファイル) を使用するデータベースにのみ、ユーザーレベルのセキュリティが設定されています。 それ以降のバージョンでは、以前のバージョンの Access で作成されたデータベースを開くと、そのデータベースでユーザーレベルのセキュリティが適用されている場合、そのデータベース用に設計されたセキュリティ機能が動作します。 たとえば、ユーザーはデータベースを使用するためにパスワードを入力する必要があります。

また、ユーザーレベルのセキュリティウィザードや [ユーザーとグループのアクセス許可] ダイアログボックスなど、Access 2003 以前のバージョンで提供されているさまざまなセキュリティツールを起動して実行することもできます。 操作を行うときに、これらのツールは、.mdb または .mde ファイルを開いたときにのみ利用できるようになることに注意してください。 ファイルを .accdb ファイル形式に変換すると、既存のユーザーレベルのセキュリティ機能はすべて削除されます。

Access 2003 のユーザーレベルセキュリティの概要

以下のセクションでは、Access 2003 以前のバージョンでのユーザーレベルのセキュリティに関する背景情報について説明します。 以前のセキュリティモデルとユーザーレベルのセキュリティに精通している場合は、この記事の後半で説明した手順をスキップして、直接ユーザーレベルのセキュリティを設定するか、ユーザーレベルのセキュリティを削除することができます。

ユーザーレベルセキュリティの基本

access のユーザーレベルセキュリティは、サーバーベースのシステムのセキュリティメカニズムに似ています。パスワードとアクセス許可を使用して、ユーザーまたはユーザーグループのアクセスをデータベース内のオブジェクトに許可または制限します。 access 2003 以前のバージョンでは、ユーザーレベルのセキュリティを access データベースに実装すると、データベース管理者またはオブジェクトの所有者が、テーブル、クエリ、フォーム、レポート、およびユーザーのグループに対して実行できる操作を制御できます。データベース内のマクロ。 たとえば、ユーザーの1つのグループがデータベース内のオブジェクトを変更できます。また、別のグループが特定のテーブルにデータを入力できるだけで、3番目のグループは一連のレポートのデータを表示することができます。

access 2003 以前のバージョンのユーザーレベルのセキュリティでは、パスワードと権限 (データベース内のデータまたはオブジェクトに対するユーザーのアクセスの種類を指定する一連の属性) を組み合わせて使用します。 個人または個人のグループに対してパスワードや権限を設定できます。また、パスワードとアクセス許可の組み合わせは、データベース内のオブジェクトへのアクセスが許可されているユーザーとユーザーのグループを定義するセキュリティアカウントになります。 さらに、ユーザーとグループの組み合わせはワークグループと呼ばれ、Access ではワークグループ情報ファイルにその情報が保存されます。 起動時に、ワークグループ情報ファイルが読み込まれ、ファイル内のデータに基づいてアクセス許可が適用されます。

既定では、Access には組み込みのユーザー ID と2つの組み込みのグループが用意されています。 既定のユーザー ID はAdminで、既定のグループは [ユーザー ] と [管理者] です。 既定では、すべての id が少なくとも1つのグループに属している必要があるため、Access では組み込みのユーザー id がユーザーグループに追加されます。 また、ユーザーグループには、データベース内のすべてのオブジェクトに対するフル権限が与えられます。 また、管理者 ID は、管理者グループのメンバーでもあります。 管理者グループには、少なくとも1つのユーザー ID を含める必要があります (データベース管理者である必要があります)。管理者 ID は、変更するまでは既定のデータベース管理者になります。

access 2003 以前のバージョンを起動すると、access に管理者ユーザー ID が割り当てられ、既定の各グループのメンバーになります。 この ID とそのグループ ([管理者] および [ユーザー]) は、すべてのユーザーに対して、データベース内のすべてのオブジェクトに対する完全な権限を付与します。つまり、ユーザーレベルのセキュリティを実装しない限り、すべてのユーザーがすべての .mdb ファイルのオブジェクトを開いて表示、変更することができます。

Access 2003 またはそれ以前のバージョンでユーザーレベルのセキュリティを実装する方法の1つは、ユーザーグループのアクセス許可を変更し、管理者グループに新しい管理者を追加することです。 この操作を行うと、Access によって自動的に新しいユーザーが [ユーザー] グループに割り当てられます。 これらの手順を実行すると、ユーザーは保護されたデータベースを開くたびにパスワードでログインする必要があります。 ただし、より具体的なセキュリティを実装する必要がある場合は、1つのユーザーグループにデータを入力し、別のグループにデータの読み取りのみを許可する必要がある場合は、追加のユーザーとグループを作成し、データベース内の一部またはすべてのオブジェクトに対する特定の権限を付与する必要があります。. この種類のユーザーレベルセキュリティを実装すると、複雑なタスクになる場合があります。 プロセスを簡素化するために、Access にはユーザーレベルのセキュリティウィザードが用意されており、1段階の手順でユーザーとグループを簡単に作成できます。

ユーザーレベルセキュリティウィザードを使用すると、アクセス許可の割り当てとユーザーおよびグループアカウントの作成を行うことができます。 ユーザーアカウントには、Access ワークグループでデータベースオブジェクトを表示、使用、または変更するためのユーザーのアクセス許可を管理するために必要なユーザー名と一意の ID 番号 (pid) が含まれています。 グループアカウントは、ワークグループに属するユーザーアカウントのコレクションです。 Access では、グループ名と PID を使用して各作業グループを識別し、グループに割り当てられているアクセス許可がグループ内のすべてのユーザーに適用されます。 ウィザードの使用方法の詳細については、この記事の後半の「ユーザーレベルのセキュリティを設定する」を参照してください。

ウィザードが完了したら、データベースとその既存のテーブル、クエリ、フォーム、レポート、およびマクロについて、ワークグループ内のユーザーとグループのアカウントに対する権限を手動で割り当てる、変更する、または削除することができます。 また、自分または別のユーザーがデータベースに追加する新しいテーブル、クエリ、フォーム、レポート、マクロに対して、Access によって割り当てられる既定のアクセス許可を設定することもできます。

ワークグループとワークグループ情報ファイル

Access 2003 以前のバージョンでは、ワークグループは、データを共有するマルチユーザー環境のユーザーのグループです。 ワークグループ情報ファイルには、ユーザーとグループのアカウント、パスワード、および個別のユーザーまたはユーザーのグループに設定されたアクセス許可が含まれます。 データベースを開くと、ワークグループ情報ファイル内のデータが読み込まれ、ファイルに含まれているセキュリティ設定が適用されます。 さらに、ユーザーアカウントは、ユーザーのアクセス許可を管理するために Access によって作成されるユーザー名と個人 ID (PID) の組み合わせです。 グループアカウントはユーザーアカウントのコレクションであり、グループ名と個人 ID (PID) でも識別されます。 グループに割り当てられている権限は、グループ内のすべてのユーザーに適用されます。 これらのセキュリティアカウントには、データベースとそのテーブル、クエリ、フォーム、レポート、マクロに対する権限を割り当てることができます。 権限自体は、セキュリティが有効になっているデータベースに格納されます。

ユーザーが最初に access 2003 または以前のバージョンを実行したときに、access のインストール時にユーザーが指定した名前と組織の情報によって識別される access ワークグループ情報ファイルが自動的に作成されます。 Access 2003 の場合、セットアッププログラムは次のレジストリキーに、このワークグループ情報ファイルの相対的な場所を追加します。

HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Access\Jet\4.0\Engines\SystemDB

および

HKEY_USERS\.DEFAULT\Software\Microsoft\Office\11.0\Access\Jet\4.0\Engines\SystemDB

以降のユーザーは、HKEY_USERS レジストリキーの値から既定のワークグループファイルパスを継承します。 この情報はよくわかりますので、許可されていないユーザーがこのワークグループ情報ファイルの別のバージョンを作成する可能性があります。 したがって、権限のないユーザーは、ワークグループ情報ファイルによって定義されたワークグループの管理者アカウント (管理者アカウント) の irrevocable 権限を引き受ける可能性があります。 権限のないユーザーがこれらのアクセス許可を想定していないようにするには、新しいワークグループ情報ファイルを作成し、ワークグループ ID (WID) を指定します。新しいワークグループ情報を作成するときに入力する文字列 (4 ~ 20 文字)拡張子. 新しいワークグループを作成すると、このワークグループファイルの管理グループが一意に識別されます。 WID を知っている人だけが、ワークグループ情報ファイルのコピーを作成できます。 新しいファイルを作成するには、ユーザーレベルのセキュリティウィザードを使用します。

重要: 正確な名前、組織、ワークグループの ID (すべて3つのエントリに使用される文字の大文字と小文字の区別を含む) を書き留めておいて、安全な場所に保管してください。 ワークグループ情報ファイルを再作成する必要がある場合は、完全に同じ名前、組織、ワークグループ ID を指定する必要があります。 これらのエントリを忘れるか紛失した場合、データベースにアクセスできなくなる可能性があります。

権限の動作とユーザーの割り当てが可能な操作

ユーザーレベルのセキュリティでは、明示的と暗黙的という2種類のアクセス許可が認識されます。 明示的なアクセス許可とは、ユーザーアカウントに直接付与されるアクセス許可です。他のユーザーは影響を受けません。 暗黙的なアクセス許可は、グループアカウントに付与されるアクセス許可です。 そのグループにユーザーを追加すると、そのユーザーにグループのアクセス許可が付与されます。グループからユーザーを削除すると、そのユーザーからグループのアクセス許可が取得されます。

ユーザーがセキュリティ機能を利用するデータベースオブジェクトに対して操作を実行しようとした場合、そのユーザーのアクセス許可のセットは、ユーザーの明示的なアクセス許可と暗黙的なアクセス許可の共通部分に基づいています。 ユーザーのセキュリティレベルは、常にユーザーの明示的なアクセス許可の制限を最も厳しくし、そのユーザーが属しているすべてのグループのアクセス許可を持っています。 このため、ワークグループを管理するには、個々のユーザーにではなく、新しいグループを作成し、グループにアクセス許可を割り当てるという方法が最も複雑です。 その後、グループからユーザーを追加または削除することによって、個々のユーザーのアクセス許可を変更できます。 また、新しいアクセス許可を付与する必要がある場合は、1つの操作でグループのすべてのメンバーにそのアクセス許可を与えることができます。

データベースオブジェクトの権限は、次の方法で変更できます。

  • データベースの作成時に使用されたワークグループ情報ファイルの管理者グループのメンバー。

  • オブジェクトの所有者。

  • オブジェクトの管理権限を持つすべてのユーザー。

ユーザーが操作を現在実行できない場合でも、操作を実行する権限を自分自身に付与することができます。 これは、ユーザーが管理者グループのメンバーである場合、またはユーザーがオブジェクトの所有者である場合に当てはまります。

テーブル、クエリ、フォーム、レポート、またはマクロを作成したユーザーは、そのオブジェクトの所有者です。 また、データベースの権限を変更できるユーザーのグループは、これらのオブジェクトの所有権を変更することも、これらのオブジェクトを再作成することもできます。どちらも、オブジェクトの所有権を変更する方法です。 オブジェクトを再作成するには、オブジェクトのコピーを作成するか、オブジェクトをインポートまたはエクスポートして別のデータベースに保存することができます。 これは、データベースそのものを含む、オブジェクトの所有権を移転する最も簡単な方法です。

注: コピー、インポート、またはエクスポートを行っても、 RunPermissionsプロパティがOwner の所有者に設定されているクエリの所有権は変更されません。 クエリの所有権を変更するには、 RunPermissionsプロパティがユーザーのに設定されている必要があります。

セキュリティアカウント

Access 2003 ワークグループ情報ファイルには、次の定義済みアカウントが含まれています。

アカウント

関数

管理者

既定のユーザーアカウント。 このアカウントは、Visual Basic for Applications (VBA) や microsoft Office Excel 2003 などの microsoft Jet データベースエンジンを使用できる access やその他のプログラムのコピーごとに、まったく同じです。

管理者

管理者のグループアカウント。 このアカウントは、各ワークグループ情報ファイルに固有のものです。 既定では、管理者ユーザーは管理者グループのメンバーです。 管理者グループには、常に少なくとも1人のユーザーが存在している必要があります。

ユーザー

すべてのユーザーアカウントを構成するグループアカウント。 [管理者] グループのメンバーがユーザーアカウントを作成すると、そのユーザーグループにユーザーアカウントが自動的に追加されます。 このアカウントは、ワークグループ情報ファイルと同じですが、ワークグループの管理者グループのメンバーによって作成されたユーザーアカウントのみが含まれています。 既定では、このアカウントには、新しく作成されたすべてのオブジェクトに対するすべての権限が付与されます。 ユーザーグループからユーザーアカウントを削除する唯一の方法は、そのユーザーを削除する管理者グループのメンバーです。

実際には、Access 2003 以前のバージョンのセキュリティは常にアクティブになります。 ワークグループのログオン手順を有効にするまでは、空のパスワードを使用して、既定の管理者ユーザーアカウントを使用することで、すべてのユーザーに対して表示されている [すべてのユーザー] を開くことができます Access では、ワークグループの管理者アカウントとして管理者アカウントが使用されます。 Access では、作成されたすべてのデータベース、テーブル、クエリ、フォーム、レポート、マクロの所有者 (グループまたはユーザー) に加えて、管理者アカウントが使用されます。

管理者と所有者は、剥奪できないアクセス許可を持っているため、次のことを実行する必要があります。

  • 管理者 ([管理者] グループのメンバー) は、常にワークグループに作成されたオブジェクトのすべての権限を取得できます。

  • テーブル、クエリ、フォーム、レポート、またはマクロを所有するアカウントは、常にそのオブジェクトに対するすべての権限を取得できます。

  • データベースを所有しているアカウントは、いつでもそのデータベースを開くことができます。

管理者のユーザーアカウントはアクセスのコピーごとにまったく同じであるため、「データベースのセキュリティを強化する」の最初の手順は、管理者と所有者のユーザーアカウントを定義する (または1つのユーザーアカウントを管理者と所有者の両方のアカウントに使用する) 方法です。管理者グループから管理者ユーザーアカウントを削除します。 そうしないと、Access のコピーを持つユーザーは、管理者アカウントを使用してワークグループにログインし、ワークグループのテーブル、クエリ、フォーム、レポート、マクロに対するすべての権限を持つことになります。

管理者グループに必要な数のユーザーアカウントを割り当てることはできますが、データベースを所有できるユーザーアカウントは1つだけです。所有者アカウントは、データベースが作成されたとき、または新しいデータベースを作成して所有権を移転したときにアクティブになっているユーザーアカウントです。 データベース内のすべてのオブジェクト。 ただし、グループアカウントでは、データベース内のテーブル、クエリ、フォーム、レポート、マクロを所有できます。

セキュリティアカウントを編成するときの考慮事項

  • ユーザーアカウントのみが、Access にログオンできます。グループアカウントを使用してログオンすることはできません。

  • データベースのユーザー用に作成したアカウントは、ユーザーがデータベースを使用するときに参加するワークグループ情報ファイルに保存されている必要があります。 別のファイルを使用してデータベースを作成している場合は、アカウントを作成する前にファイルを変更します。

  • 管理者とユーザーアカウントのために、一意のパスワードを必ず作成してください。 管理者アカウントを使用してログオンできるユーザーは、ワークグループで作成されたすべてのテーブル、クエリ、フォーム、レポート、およびマクロに対するすべての権限を取得できます。 所有者アカウントを使用してログオンできるユーザーは、そのユーザーが所有するオブジェクトに対するすべての権限を常に取得できます。

ユーザーアカウントとグループアカウントを作成した後は、ユーザーとグループの間の関係を表示して印刷することができます。 各ユーザーが属しているグループと各グループに属しているユーザーが表示されているワークグループ内のアカウントのレポートが印刷されます。

注: Microsoft access 2.0 で作成されたワークグループ情報ファイルを使用している場合、ユーザーとグループの情報を印刷するには、管理者グループのメンバーとしてログオンする必要があります。 Microsoft access 97 以降で作成されたワークグループ情報ファイルでは、ワークグループ内のすべてのユーザーがユーザーとグループの情報を印刷できます。

ユーザーレベルのセキュリティを設定する

このセクションの手順では、ユーザーレベルセキュリティウィザードを起動して実行する方法について説明します。 これらの手順は、access 2007 以降のバージョンで開かれている access 2003 以前のファイル形式を使用しているデータベースにのみ適用されることに注意してください。

重要: access 2007 以降のバージョンでは、ユーザーレベルのセキュリティウィザードを使用して既定のワークグループ情報ファイルを指定する場合、access を起動するときにワークグループ情報ファイルを指すように/WRKGP コマンドラインスイッチを使用する必要もあります。 access でのコマンドラインスイッチの使用について詳しくは、「 Microsoft Office 製品のコマンドラインスイッチ」をご覧ください。

ユーザーレベルセキュリティウィザードを開始する

  1. 管理する .mdb または .mde ファイルを開きます。

  2. [データベースツール] タブの [管理] グループで、[ユーザーと権限] の下にある矢印をクリックし、[ユーザーレベルセキュリティウィザード] をクリックします。

  3. 各ページの手順に従ってウィザードを完了します。

    注: 

    • ユーザーレベルセキュリティウィザードでは、現在の Access データベースのバックアップコピーが同じ名前と .bak のファイル名拡張子で作成され、現在のデータベースで選んだオブジェクトのセキュリティ対策が採用されます。

    • 現在の Access データベースでパスワードを使用して VBA コードを保護する場合は、ウィザードによってパスワードの入力を求めるメッセージが表示されます。ウィザードでは、ウィザードで操作を正常に完了するために入力する必要があります。

    • ウィザードを使って作成したパスワードはすべて、ユーザーレベルのセキュリティウィザードレポートに印刷されます。これは、ウィザードの使用が完了したときに印刷されます。 このレポートは安全な場所に保管してください。 このレポートを使用して、ワークグループファイルが失われたか破損した場合に、そのファイルを再作成することができます。

ユーザーレベルのセキュリティを削除する

Access 2007 以降での作業中にユーザーレベルのセキュリティを削除するには、.mdb ファイルを .accdb ファイルとして保存します。

ファイルのコピーをに保存します。ACCDB 形式

  1. [ファイル] タブをクリックします。 Backstage ビューが開きます。

  2. 左側の [共有] をクリックします。

  3. 右側で [データベースの保存形式] をクリックし、[ Access データベース (* .accdb)] をクリックします。

    [名前を付けて保存] ダイアログ ボックスが表示されます。

  4. [保存先] ボックスの一覧を使用して、変換されたデータベースの保存場所を指定します。

  5. [ファイルの種類] ボックスの一覧で、 Access 2007-2016 データベース (* .accdb)] を選びます。

  6. [保存] をクリックします。

注: access 2007 を使用している場合は、 Microsoft Office ボタンをクリックし、[変換] をクリックして [保存先] ダイアログボックスを開き、データベースをに保存します。ACCDB ファイル形式。

オブジェクト権限のリファレンス

次の表に、データベースとデータベース内のオブジェクトに対して設定できる権限の一覧と、各権限設定を使用した場合の効果または結果を示します。

権限

対象となるオブジェクト

結果

開く/実行

データベース全体、フォーム、レポート、マクロ全体

ユーザーは、コードモジュールのプロシージャを含む、オブジェクトを開いたり、実行したりすることができます。

排他で開く

データベース全体

ユーザーはデータベースを開き、他のユーザーをロックアウトすることができます。

デザインの読み取り

テーブル、クエリ、フォーム、マクロ、コードモジュール

ユーザーは、表示されているオブジェクトをデザインビューで開くことができます。

注: データの読み取りや更新など、別のアクセス許可を割り当てることによってテーブルまたはクエリのデータへのアクセス権を付与する場合は、データを正しく表示して表示するために、デザインが表示されている必要があるため、[デザインの読み取り権限を付与する] もあります。

デザインを変更する

テーブル、クエリ、フォーム、マクロ、コードモジュール

ユーザーは、表示されているオブジェクトのデザインを変更できます。

管理

データベース、テーブル、クエリ、フォーム、マクロ、コードモジュール全体

ユーザーまたはグループがオブジェクトを所有していない場合でも、表示されているオブジェクトに対する権限を割り当てることができます。

データの読み取り

テーブル、クエリ

ユーザーは、テーブルまたはクエリ内のデータを読み取ることができます。 クエリを読み取るためのアクセス許可をユーザーに付与するには、それらのユーザーに親テーブルまたは親クエリを読み取るための権限も付与する必要があります。 この設定は、[デザインの読み取り] 権限を意味します。これは、ユーザーがデータだけでなく、テーブルまたはクエリのデザインも読むことができることを意味します。

データを更新する

テーブル、クエリ

ユーザーは、テーブルまたはクエリのデータを更新できます。 ユーザーは、親テーブルまたはクエリを更新する権限を持っている必要があります。 この設定は、"デザインの読み取り" 権限と "データの読み取り" 権限があることを意味します。

データを挿入する

テーブル、クエリ

ユーザーは、テーブルまたはクエリにデータを挿入できます。 クエリの場合、ユーザーは親テーブルまたは親クエリにデータを挿入する権限を持っている必要があります。 この設定は、[データの読み取り] と [デザインの読み取り] のアクセス許可の両方を意味します。

データを削除する

テーブル、クエリ

ユーザーは、テーブルまたはクエリからデータを削除できます。 クエリの場合、ユーザーは親テーブルまたは親クエリからデータを削除する権限を持っている必要があります。 この設定は、[データの読み取り] と [デザインの読み取り] のアクセス許可の両方を意味します。

ページの先頭へ

Office のスキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×