ユーザーはネットワークの一部であり、個々のユーザーが自分の業務を実施するのに必要なリソースだけにアクセスできるようにすることは、IT管理部門の責任です。受付係はソフトウェア・プロジェクトのデータにアクセスする必要はなく、ソフトウェア開発者は人事部のリソースに関知するべきではありません。IT部門は、ユーザーが必要なデータにアクセスでき、適切でないデータにはアクセスできないよう、ユーザー権限を管理する必要があります。
小規模な組織では、Windows のネットワーク・オブジェクトに対するユーザー権限の設定 は Windows エクスプローラを使用して行います。管理者権限を持った人物が、ファイル、フォルダ、ボリューム、またはデバイスを右クリックすることで、ユーザーの権限を変更することができます。設定済みのファイルやフォルダへの読み、書き、変更のアクセス許可を、権限がある管理者が適切な内容に修正します。この方法でうまくいくなら特に問題はないかもしれません。
では、サーバーが100台あって、何千人ものユーザーがいて、複数の異なるドメインを処理しなければならないとしたらどうでしょうか?上述のようなユーザーごとに個別にアクセス許可を割り当てる方法ではとても追いつきません。個々のアカウントに関して、MySQLデータベースへのアクセスを許可しながら、特定のドメインへのアクセスを禁止するなど、適切なユーザー権限を割り当てていくのは気が遠くなるほどの作業で、当然ミスも発生することが予想されます。
そこで、Active Directory (AD) ドメインサービス の出番となります。このサービスを使えば、訓練を受けた管理者は1つのダッシュボードからすべてを管理できます。Active Directory のユーザー権限について詳述する前に、まず、Active Directory とは何なのかについて概説したいと思います。
Active Directoryとは何か?
Active Directory は、Windows 2000 で最初のベータリリースが発表されました。それ以来、物理的・仮想的を問わず、ネットワークアーキテクチャにおけるスケーラビリティへの要求の高まりに応える形で(最新バージョンには Windows Server 2016 が組み込まれるなど)進化してきました。
Active Directory とは何かというと、ネットワーク・オペレーティングシステム(NOS)であり、ディレクトリサービスとして知られる製品のクラスに属します。Windows 環境では、他の製品が選択されていてもADが使用されます。そのようには見えないかもしれませんが、基本的にはデータベースのように機能し、ユーザーやグループ、そしてネットワークに接続されているプリンタなどのデバイスやオブジェクトに関するすべての情報を管理できます。ユーザーと管理者を区別するための権限の階層も含まれています。
高度なソフトウェアにはよくあることですが、ADには独自の用語があります。これらの用語は、Active Directory でユーザーを作成したりインポートしたりする前に理解しておく必要があります。以下にいくつかの例を示します。
- 認証 – AD独自の用語ではありませんが、ユーザーは、特定のネットワークリソースへのアクセスが許可される前に、自分が本人であることを証明する必要があります。
- 承認 – 認証情報 (組織によって異なりますが、トークンが使われることが多いようです) が検証されると、ユーザーに許可が与えられます。
- フォレスト – Active Directory 全体を森になぞらえて、フォレストと呼びます。最初に作成されるルート・ドメインからの連想でしょう。森を形成するフォレスト内の各ドメインは、ツリーと呼ばれます。フォレスト内部からのリクエストと外部からのリクエストを区別するために信頼のレベルが使用されますが、別のフォレストとの信頼関係を構築することも可能です。
- ドメイン – 一般的に使われる用語ですが、ADは様々なドメイン固有の境界を適用します。
- 管理者 – ドメインにはそれぞれ管理者が存在し、他のドメインからのアクセスをブロックすることができます。
- セキュリティ – セキュリティポリシーはドメイン内でのみアクティブです。
- ポリシー – サブジェクトとオブジェクト間の対話を制御するルールのセットです。グループポリシーは各ドメインに適用されます。
- 組織単位 (Organizational Unit、OU) – ユーザー、ユーザーグループ 、コンピュータ、別のOUをストアする、ADドメイン 内のコンテナ。部門名をOUの名前として使用し、技術部に配属された新入社員をパーミッションとポリシーを定義済みの技術部OUに追加するといった管理方法が可能です。
- ドメインコントローラ – ドメインコントローラは、ドメインリソースへのアクセスを管理する Windows ネットワーク上のサーバーで、ネットワークのアップタイムを確保するための鍵になります。
すべてのネットワークオブジェクト(すべての管理対象ドメイン上の)に対するユーザー権限もADで管理可能です。適切なトレーニングでこの管理ができるようになれば、セキュリティ上のリスクが軽減でき、関係する規制へのコンプライアンス を徹底して、効率を向上させることができます。
ユーザー権限とは?
ユーザー権限は特段新しいものではなく、以前から、サービスにアクセスするには、ユーザー情報を入力してログインするのが一般的です。使用される用語は、権限セット (Salesforce)、 アクションメニュー (Oracle)、 実行権限 (Linux)、 権限割り当て (Microsoft Dynamics NAV)などと多様ですが、いずれもID管理ポリシーを実施してユーザーにアクセスする権限を与えています。
ワークステーションの場合、多くの企業はユーザーのアクセスを許可するためにローカルのログインとパスワードを使用します。ところが、Active Directory を使えば、ドメインコントローラのおかげで、オブジェクトとドメインに対する権限が確認されれば、ユーザーは任意のコンピュータにログインしてリソースにリモート接続できます。つまり、アクセスはドメインによって許可され、ローカルマシンに限定されることはありません。
すべてのユーザーは、ネットワークにアクセスするためにドメインコントローラが管理するアカウントを必要とします。当然のことながら、インフラストラクチャとデータはサイバー攻撃から保護する必要があります。
Active Directory 管理者は通常、次のうちのいずれかの方法で新しいユーザーを作成します。
- ADAC – Active Directory 管理センター。Windows Server 2008 から導入されました。新しいユーザーを作成するためにユーザーパスワードやコンテナを必要としません。PowerShell コマンドを使用してスクリプトを作成できます。
- ADUC – Active Directory ユーザーとコンピュータ。Windows 2000 のADの最初のバージョンからのツールです。
- PowerShell – .NET Framework をベースにしたスクリプトエンジン。以下のコマンドを使用して、ADモジュールを PowerShell にロードできます。
Import-Module ActiveDirectory
新しいADユーザーアカウントを作成するのに、ADAC、ADUC、PowerShell(自動化のために多用されています)のどれを使用したとしても、ユーザー権限の設定には通常次のようにします。
Active Directory にユーザー権限を設定する方法
2008 以降は、ユーザー権限の変更のために ADACと PowerShell を使用するのが主流になりました。ローカルポリシーとは異なり、ドメインをベースにしたユーザー権限はそれほど単純ではありませんが、方法はすべて同じAD機能に則ったものになります。
たとえば、管理者は、性区別のない新しいロボット従業員のために、行うべき作業ができるよう必要なアクセス許可を与えられた新しいユーザーを作成することができます。
いずれにせよ、ユーザー権限の設定は製造施設の品質部門の責任範囲になり、またすべての会社の部門をカバーするコンプライアンス監査も一部の責任を負うことになります。ユーザーはどのような権限を与えられるべきでしょうか?どのような点を考慮する必要がありますか?
ユーザー管理のプロセス
GUI ツールを開き、チェックしたいユーザーアカウントを見つけ、右クリックして「プロパティ」を表示する画面に行って必要な変更を行います。アカウントのコピーや、グループやOUからの権限のインポートを簡単に行える GUI は便利で、PowerShell で同じ操作を行うのは面倒です。GUI での作業をいらだたしく感じたら、PowerShell スクリプトを使用する選択肢もあります。
これは1つの例に過ぎませんが、ADAC であろうと PowerShell であろうと、プロセスは似ています。
次の質問と回答について吟味してみると、ユーザー管理のプロセスが明確になるかもしれません。
- それはユーザーですか? – ユーザーは、セキュリティ、権限設定、その他の管理機能を変更することができない、最下位レベルの階層である、ユーザーグループの一部です。
- パスワードポリシーを実施する必要はありますか? – ユーザーパスワードを定期的に変更しなければならないというポリシーを採用している企業もありますが、そのような方針は推奨されます。
- 組織単位 (OU)の一部ですか? – ADが正しく設定されている場合、品質コンテナか、少なくとも品質部門がすべてのオブジェクトへの必要なアクセスを許可する従業員レベルの指示子があります。「コンプライアンス」が別のOUとして使用可能な場合は、そのOUにも追加されます。さらに、文書管理も品質管理の一部であるため、文書管理部門は、製造、技術、購買、その他、品質管理マニュアルに定義されたプロセスに関わるすべての公式文書にアクセスできます。これらすべての点を考慮すると、かなり複雑になる可能性があり、権限管理を軽く考えることはできないことがわかります。
- 関連するグループはありますか? – これはADの設定方法によって異なります。部署よりも、管理者・取締役・監督者・一般社員など、それぞれ権限が異なる序列レベルでグループを使用する企業もあります。
- 特別な権限は必要ですか? – 追加の権限が必要な場合は、AD管理者に通知されます。
- 新しいポリシーは必要ですか? – グループポリシーは、他の権限との間でコンフリクトを起こす可能性があるので、できれば避ける方がいいでしょう。
考慮すべきことが多いので、ユーザー権限を設定するにはある程度周到な計画が必要ですが、いったんOUとユーザーグループの権限が定義されると、作業は簡単になります。ADの権限は、ユーザーがグループやOUに追加されると権限が継承されるよう、階層化する場合もあります。基本ユーザーの権限よりも高い場合は、高い方が優先されます。
最後に、Active Directory は、Windows エクスプローラを使用したローカルの権限管理に代わるものではありません。これについての書物はこれまでも書かれており、これからも書かれるでしょう。ADの権限を設定したり、ポリシーを変更したりするときは、できるだけ複雑にならないよう気を付けてください。また、繰り返しの作業を自動化するために、GUI や PowerShell などのツールの使用を検討することも価値があります。
ソーシャルメディアやストリーミングビデオにアクセスできないとすぐに苦情を言うユーザーもいるので、実稼働中のネットワークに変更を適用する前に、オフラインか仮想環境でADをテストすることをお勧めします。もし、ユーザー管理に時間がかかり過ぎている場合は、Active Directory を利用するメリットを考慮することは有意義です。Active Directory を利用してユーザー管理がシンプルになれば、IT部門は、サイバーセキュリティやプロセスの改善に集中できるようになります。