ServerAuthenticationStateProvider сообщает Win32Exception: не удалось установить доверительные отношения между основным C#

Место общения программистов C#
Ответить
Anonymous
 ServerAuthenticationStateProvider сообщает Win32Exception: не удалось установить доверительные отношения между основным

Сообщение Anonymous »

У меня есть серверное приложение blazor с одной страницей
Index.razor

Код: Выделить всё

@page "/"


You see this because you have the sample_role


Everyone sees this
Поскольку sample_role не существует ни в одном Active Directory по умолчанию, я написал собственный поставщик аутентификации, который внедрит эту роль на основе базы данных существующих пользователей.

Код: Выделить всё

public class CustomAuth : ServerAutheticationProvider
{
public override async Task GetAuthenticationStateAsync()
{
var state = await base.GetAuthenticationStateAsync();

var currentUserId = state.User.Identity.Name;
// now I fetch permissions for this user from a database

bool userHasRole = Database.DoesRoleExistFor(currentUserId);

if(userHasRole) {
var sample_role = new Claim(ClaimTypes.Role, "sample_role");
var identity = new ClaimsIdentity(new Claim[] { sample_role });
state.User.AddIdentity(identity);

NotifyAuthenticationStateChanged(Task.From(new AutheticationState(state.User)));
}
return state;
}
}
Я настроил этот класс как AuthenticationStateProvider по умолчанию в Startup.cs

Код: Выделить всё

services.AddScoped();
Все вышеперечисленное работает на моей машине разработки, где моя машина присоединена к домену. Значение currentUserId выглядит примерно так: DOMAIN\USERNAME.
Этот код также работает на моем личном компьютере, который не является частью какого-либо домена. Значение currentUserId в этом случае — COMPUTERNAME\USERNAME.
Однако, когда я перемещаю свой код в производственную среду с другим именем домена, я получить исключение:

Win32Exception: не удалось установить доверительные отношения между основным доменом и доверенным доменом.
Когда я меняю строку: Кому Код работает, но я теряю возможность решать, кто что будет видеть.
Как мне решить эту проблему?

Подробнее здесь: https://stackoverflow.com/questions/732 ... lationship
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»