ユーザとロールの設定の概要
ArcGIS Server Manager では、サービスや Web アプリケーションへのアクセス権限をロールに割り当てることができます。ロールとは、1 人以上のユーザのグループです。ユーザとは、Web アプリケーションまたは Web サービスにアクセスする個人です。ユーザは複数のロールに属することができます。
たとえば、John、Carla、Pat は天然資源を管理する GIS サーバのユーザであるとします。この 3 人のユーザは General Access ロールに属しているため、基本的なサービスにアクセスすることができます。ただし、John と Carla は他のサービスへのアクセスが許可される Hydrologist ロールにも属しています。4 人目のユーザである Maria は、すべてのサービスへのアクセスが許可される Team Leader ロールに属しています。各自のシナリオに合わせてロールやアクセス レベルを設定できることに注意してください。
ユーザとロールの格納場所の設定
ArcGIS Server Manager のツールを使ってサービスやアプリケーションに権限を割り当てるには、ユーザやロールが格納される場所を定義する必要があります。そのための方法はさまざまです。それぞれの設定に関する詳細については、以下のリンクをご参照ください。
Windows ユーザとグループ: Web サーバまたはドメイン アカウントの既存のローカル Windows アカウントを活用する場合は、Windows ユーザとグループを選択します。ドメイン アカウントを使用する場合、Web サーバは、認証に使用するドメインに存在する必要があります。
このオプションは ArcGIS Server をイントラネットで使用するときに一番よく使用されます。このオプションでは、Web ブラウザで 統合 Windows 認証を使用して、シングル サインオン(SSO)も可能です。Web アプリケーションから Web サービスへの認証情報の自動受け渡しは、このオプションに組み込まれています。
Microsoft SQL Server Express: ユーザとロールの新しいリストを設定し、ArcGIS Server に含まれているツールを使用する場合は、このオプションを使用することができます。(ArcGIS Server に含まれている)Microsoft SQL Server Express を使用して、ユーザとロールを格納することができます。また、SQL Server の Express 以外のエディションを使用することもできます。Manager の [セキュリティ] インタフェースは、SQL Server に格納されているユーザとロールを管理するためのツールを提供します。
このオプションは、ArcGIS Server をインターネットで使用するときに一番よく使用されます。それは、インターネット ユーザに Windows 認証情報を与えたくないためです。このオプションは、Web アプリケーションによって使用される Web サービスとは異なる認証情報を Web アプリケーションで持つ場合にも便利です。
カスタム プロバイダ: ユーザとロールを SQL Server または Windows オペレーティング システム以外の場所に格納したい場合があります。選択肢には、他の種類のデータベースや XML ファイルが含まれます。
このオプションでは、ASP.NET カスタム メンバーシップ プロバイダを使用します。このオプションを使用するには、ユーザ/ロール ストアのための .NET プロバイダを取得し、設定する必要があります。たとえば、ユーザとロールのストアに Oracle データベースを使用するためのサードパーティ プロバイダが提供されています。独自のカスタム プロバイダを記述することも可能です。詳細については、ASP.NET メンバーシップのドキュメントをご参照ください。このオプションは、上述の Microsoft SQL Server と同じ理由で、しかし、ユーザとグループを Microsoft SQL Server 以外の場所に格納する場合に、使用します。
デフォルトでは、ユーザとロールは同じ場所に格納されます。Windows ユーザを選択する場合は、SQL Server またはカスタム プロバイダにロールを格納することができます。このオプションを選択する場合は、SQL Server(またはカスタム プロバイダ)のロールに、Windows ユーザ アカウントに対するものとまったく同じ名前のメンバが含まれるようにしなければなりません。
Manager は、すべての Web サービスとすべての Web アプリケーションに対して同じユーザとロールを使用します。サービスとアプリケーションに別の格納場所を使用する場合は、サービスとアプリケーションの両方をセキュリティで保護するために同じ Manager のインスタンスを使用することはできません。Manager を使ってサービスを保護し、別のツールを使ってアプリケーションを保護するか、Manager を使ってアプリケーションを保護し、別のツールを使ってサービスを保護することが可能です。最初のオプション(Manager でサービスのみを保護する)では、Manager で Web アプリケーションに対するセキュリティを有効にしないでおきます。代わりに、アプリケーションを手動で設定するか、Microsoft の WSAT(Web Site Administration Tool)を使用することにより、Web アプリケーションのセキュリティを個別に設定することができます。WSAT の使用については、「Web アプリケーションのセキュリティ」をご参照ください。
もう 1 つのオプションは、インスタンスの追加ツールを使用して、ArcGIS Web アプリケーションの 2 つ目のインスタンスを追加することです。1 つ目の ArcGIS インスタンスで GIS Web サービスを管理し、2 つ目のインスタンスで Web アプリケーションを管理します。詳細については、「ArcGIS Server インスタンス」をご参照ください。
構成ファイル
ユーザとロールの格納場所を設定する際、この情報は ArcGIS Server の構成ファイルに書き込まれます。実際のユーザとロールは指定した場所に格納されます。しかし、セキュリティ ストアの格納方法を設定する情報は、ArcGIS Server の構成ファイルに格納されます。通常は、Manager を使って構成ファイルを編集しますが、ここではセキュリティ設定を手動で変更する必要があるユーザのための情報を提供します。
セキュリティ関連の設定はすべて、ASP.NET の標準の構成設定に格納されます。これらの設定に関する詳細については、ASP.NET のリファレンスをご参照ください。
すべてのセキュリティ設定は、<ArcGIS インスタンス>\Security Web アプリケーションに格納されます(http://myserver.example.com/ArcGIS/Security の場合、物理的な格納場所はデフォルトで C:\Inetpub\wwwroot\ArcGIS\Security になります)。このアプリケーション フォルダ内の web.config ファイルには、ArcGIS Server インスタンスのセキュリティ設定が含まれています。たとえばカスタム メンバーシップ プロバイダを追加するためにプロバイダを手動で設定する必要がある場合は、この web.config ファイルを編集します(カスタム プロバイダの詳細については、「カスタム プロバイダでのユーザとロールの設定」をご参照ください)。
ウィザードを使ってセキュリティを設定すると、Security Web アプリケーションの設定が更新され、同じ設定が他のアプリケーションにコピーされます。これには、同じ ArcGIS インスタンス内の Rest、Services、Tokens の 3 つのアプリケーションが含まれます。また、Web アプリケーションが Manager ですでに保護されている場合は、これらのアプリケーションで設定が更新されます。その後、別の Web アプリケーションを Manager で保護すると、これらの設定がそのアプリケーションの web.config ファイルにもコピーされます。
Security アプリケーションの web.config ファイルの設定を変更する場合は、[セキュリティ] → [設定] → [構成] の順にクリックして、ウィザードを実行する必要があります。このウィザードは、セキュリティを適用するアプリケーションに変更をコピーします。また、Manager は複数のアプリケーションのセキュリティ設定を調整してくれるので、手動で変更を行うよりも、Manager を使ってセキュリティ設定を変更することを推奨します。