重要
mongodインスタンスでは、MongoDB インスタンスでユーザーまたはロールが作成されていない場合にのみ localhost 例外 が適用されます。
localhost 例外 を使用すると、アクセス制御を有効にして、システムに最初のユーザーまたはロールを作成できます。 アクセス制御を有効にした後、localhost インターフェースに接続し、 adminデータベースに最初のユーザーを作成します。
最初にユーザーを作成する場合、そのユーザーには他のユーザーを作成する特権が必要です。 userAdminまたはuserAdminAnyDatabaseロールはどちらも、他のユーザーを作成する特権を付与します。
警告
localhost 例外を使用する接続では、 最初の ユーザーまたはロール のみ を作成するアクセス権が付与されます。
ユーザーまたはロールを作成すると、 localhost 例外 は無効になります。 ユーザーとロールを作成する必要がある場合は、まず組み込みのuserAdminまたはuserAdminAnyDatabaseロールのいずれかを使用してユーザーを作成する必要があります。 最初にロールを作成した場合、ユーザーは作成できません。
db.createRole()メソッドで最初にロールを作成できる機能は、LDAP で認可されたユーザーのみに付与されています。 詳細については、「 LDAP 認可」を参照してください。
シャーディングされたクラスターの Localhost 例外
重要
mongosでは、localhost 例外は、シャーディングされたクラスターのユーザーまたはロールが作成されていない場合にのみ適用されます。シャーディングされたクラスターでは、 localhost 例外 は各シャードに個別に適用されるだけでなく、クラスター全体に適用されます。
シャーディングされたクラスターを作成し、 インスタンスを通じてmongos ユーザー管理者 を追加した場合でも、個々のシャードへの不正アクセスを防止する 必要 があります。個々のシャードへの不正アクセスを防ぐには、クラスター内の各シャードに対して次のいずれかの手順を行います。
シャードのプライマリにユーザー管理者を作成します。
起動時に localhost 例外 を無効にします。 localhost 例外を無効にするには、
enableLocalhostAuthBypassパラメータを0に設定します。