DBAtlas · Атлас эксплуатации баз данных

916: The server principal is not able to access the database under the current security context

SQL Server

Что это значит?

Имя входа попыталось обратиться к определённой базе данных, но не имеет к ней доступа в текущем контексте безопасности. Имя входа может подключиться к серверу, но не имеет соответствующего пользователя/разрешения в целевой базе данных.

Почему возникает?

У имени входа нет сопоставленного пользователя в базе данных (потерянный или так и не созданный), доступ к базе данных ограничен или учётная запись guest отключена. Частый случай — обозреватель объектов SSMS пытается прочитать метаданные базы данных, к которой у имени входа нет доступа.

Как исправить

Создайте пользователя для имени входа в целевой базе данных и выдайте необходимые разрешения: USE [db]; CREATE USER [login] FOR LOGIN [login]; и назначьте подходящие роли/разрешения. Если существует потерянный пользователь, сопоставьте его с помощью ALTER USER ... WITH LOGIN = ... Если доступ действительно нужен, добавьте его в подходящую роль базы данных; если нет, ошибка — ожидаемое поведение (нет доступа к этой базе данных).

Открыть в DBAtlas →

Ещё по этой СУБД