powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как восстановить сессию
25 сообщений из 288, страница 11 из 12
Как восстановить сессию
    #39581057
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПарамонhVosttклеймы и правда в базе, их можно брать из базы, а не из тикета, за это как-то давно даже МСУ топил не по-детски
лезть в базу на каждый чих, это точно бест практис

как минимум за меткой безопасности, а так да. ты как будто вчера с деревьев слез.. ну прям ваще..
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581058
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosПочти как в ВИПРОС уже :)

вот когда в випросе будет ABAC, тогды и будешь выступать, а так то чо, вон Парамона спроси, ниче нового
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581060
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordвместо базы еще можно сессию замутить, даже быстрее чем база будет, верно? Нафига эти клеймы придумали.

не секьюрно, клеймы для отделения мух от котлет, в общем понятно все с вами, грамотеи
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581089
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttstenfordвместо базы еще можно сессию замутить, даже быстрее чем база будет, верно? Нафига эти клеймы придумали.

не секьюрно, клеймы для отделения мух от котлет, в общем понятно все с вами, грамотеи

Клеймо - ерунда, можно было не вводить
Раньше было UserID, Role
Теперь Role(Предикат на User.*) этого все равно мало
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581092
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Надо воще выкинуть и Юзера и Роль (слишком узкий контекст)

Любой объект и метод должен иметь политику доступа, которая должны быть сколь угодно сложной в глобальном контексте
Если бы я писал новую версию ВИПРОС, то бы сделал так
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581390
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAМожно и if:
Код: c#
1.
if (User.HasClaim(ClaimTypes.Role, "Admin")) { ... }


и атрибут:
Код: c#
1.
2.
3.
4.
5.
[ClaimsAuthorization(ClaimType="a", ClaimValue="b")]
public IHttpActionResult Get()
{
    return Ok();
}


Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
public class ClaimsAuthorizationAttribute : AuthorizationFilterAttribute
{
    public string ClaimType { get; set; }
    public string ClaimValue { get; set; }
 
    public override Task OnAuthorizationAsync(HttpActionContext actionContext, System.Threading.CancellationToken cancellationToken)
    {
        var principal = actionContext.RequestContext.Principal as ClaimsPrincipal;
 
        if (principal.Identity.IsAuthenticated &&
            principal.HasClaim(x => x.Type == ClaimType && x.Value == ClaimValue))
        { 
            // User is authorized, complete execution
            return Task.FromResult<object>(null);
        }
 
        actionContext.Response = actionContext.Request.CreateResponse(HttpStatusCode.Unauthorized);

        return Task.FromResult<object>(null); 
    }
}


ни первое, ни второе неверно (по крайней мере для Core). Особенно первый вариант, за такое на code review расстреливают на месте.
Для авторизации на основе клеймов надо юзать полиси, я-же писал уже об этом https://docs.microsoft.com/en-us/aspnet/core/security/authorization/policies
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581391
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttне секьюрно, клеймы для отделения мух от котлет, в общем понятно все с вами, грамотеи
клеймы не секьюрно? Грамотей
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581393
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хотя да, ты-ж клеймы в URL'ax хранишь
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581416
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosКлеймо - ерунда, можно было не вводить

Клеймо не ерунда, так как ты похоже не имеешь никакого опыта с SSO ))

ViPRosРаньше было UserID, Role

Роль это всего лишь один из клеймов.

ViPRosНадо воще выкинуть и Юзера и Роль (слишком узкий контекст)

Не надо ничего выкидывать, просто одной роли мало для полноценного управления политиками безопасности.

ViPRosЛюбой объект и метод должен иметь политику доступа, которая должны быть сколь угодно сложной в глобальном контексте

Вообще надо отделять мух от котлет, пока ничего лучше ABAC не встречал в природе для управления безопасностью. Клеймы и роли отлично ложатся на ABAC, но логика предоставления доступа может быть сколько угодно сложная, и при этом контролируется и пишется в одном единственном месте.
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581417
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordhVosttне секьюрно, клеймы для отделения мух от котлет, в общем понятно все с вами, грамотеи
клеймы не секьюрно? Грамотей

сессия не секьюрно. чё опять двадцать пять? го ту гугл подован.
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581418
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordхотя да, ты-ж клеймы в URL'ax хранишь

клеймы хранятся в базе, если говорить про authorization point.
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581452
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordни первое, ни второе неверно (по крайней мере для Core). Особенно первый вариант, за такое на code review расстреливают на месте.
Первый вариант взят из документации Microsoft о том, как использовать клеймы в Azure.
Второй из статьи одного из Microsoft MVP о том, как с ними работать в ASP.NET Web API.
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581493
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

ты блин сыпешь буквами ССО, АБАС и т.д. - они каждый день меняются и даже не охота гуглить

Я грю вот что - система доступа к объекту имеет доступ к какому то контексту (самого объекта в этом контексте может и не быть) и защита объекта должна быть задана в этом контексте
любое обращение к защищенному объекту должно подтверждаться этой системой
и все
а ты буквы какие то
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581500
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAПервый вариант взят из документации Microsoft о том, как использовать клеймы в Azure.
Второй из статьи одного из Microsoft MVP о том, как с ними работать в ASP.NET Web API.
так приведи линки, чего-ж ты стеняешся-то
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581505
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordskyANAПервый вариант взят из документации Microsoft о том, как использовать клеймы в Azure.
Второй из статьи одного из Microsoft MVP о том, как с ними работать в ASP.NET Web API.
так приведи линки, чего-ж ты стеняешся-то
Стесняюсь? Тебя-то? Насмешил
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581508
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRoshVostt,

ты блин сыпешь буквами ССО, АБАС и т.д. - они каждый день меняются и даже не охота гуглить

Я грю вот что - система доступа к объекту имеет доступ к какому то контексту (самого объекта в этом контексте может и не быть) и защита объекта должна быть задана в этом контексте
любое обращение к защищенному объекту должно подтверждаться этой системой
и все
а ты буквы какие то

ну если так рассуждать... берёшь, значит, материалы, инструменты и строишь дом!

а ты про какие-то чертежи, какие-то сметы... любой дурак справится
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581510
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRoshVostt,

ты блин сыпешь буквами ССО, АБАС и т.д. - они каждый день меняются и даже не охота гуглить

Я грю вот что - система доступа к объекту имеет доступ к какому то контексту (самого объекта в этом контексте может и не быть) и защита объекта должна быть задана в этом контексте
любое обращение к защищенному объекту должно подтверждаться этой системой
и все
а ты буквы какие то

ну да, я про АБАС этот и пишу кажется
не знаю, как она реализовывается, но суть та же
а ССО - где то это хорошо, а где то ерунда
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581513
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosну да, я про АБАС этот и пишу кажется
не знаю, как она реализовывается, но суть та же

вполне возможно, что ты имеешь в виду укладывается в ABAC с головой. направление мысли верное :)


ViPRosа ССО - где то это хорошо, а где то ерунда

не имея SSO, тебе не вынести отдельные части приложения в отдельные сервисы, не получится соорудить программный комплекс по ходу дела, всё будет завязано на одном приложении. а это тупик )
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581515
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Просто вопросы реализации очень важны

в ВИПРОС, если у тебя нет доступа к какому то полю объекта, то у этого объекта просто нету!!! этого поля для тебя,
так же и с методами - нету и все
а вот доступ описан в собственном контексте, т.е. ты НЕ проверяешь - есть у тебя доступ или нет, просто либо все работает, либо тебя посылают нах
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581516
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
никаких HasClaim и т.д. фигни
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581518
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttViPRosну да, я про АБАС этот и пишу кажется
не знаю, как она реализовывается, но суть та же

вполне возможно, что ты имеешь в виду укладывается в ABAC с головой. направление мысли верное :)


ViPRosа ССО - где то это хорошо, а где то ерунда

не имея SSO, тебе не вынести отдельные части приложения в отдельные сервисы, не получится соорудить программный комплекс по ходу дела, всё будет завязано на одном приложении. а это тупик )

ViPRosа ССО - где то это хорошо, а где то ерунда
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581521
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosв ВИПРОС, если у тебя нет доступа к какому то полю объекта, то у этого объекта просто нету!!! этого поля для тебя,
так же и с методами - нету и все

каким образом реализуется ответ на вопрос: есть ли у меня доступ к такому-то полю к такому-то объекту?

вот это важно, а не последствия, которые важны, но вторичны с точки зрения сложности реализации (но не для пользователя)


ViPRosа вот доступ описан в собственном контексте, т.е. ты НЕ проверяешь - есть у тебя доступ или нет, просто либо все работает, либо тебя посылают нах


как именно описан? клеймом он тоже нормально описывается, если уж на то пошло:

HasAccessToFieldOneInMacroTypeOther
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581522
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttкак именно описан? клеймом он тоже нормально описывается, если уж на то пошло:

HasAccessToFieldOneInMacroTypeOther
а кто проверяет?
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581524
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAСтесняюсь? Тебя-то? Насмешил
так значит линков не будет? Ну кто-бы сомневался. Ты-б лучше матчасть учил, а не троллил так бездарно на форуме
...
Рейтинг: 0 / 0
Как восстановить сессию
    #39581531
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRoshVosttкак именно описан? клеймом он тоже нормально описывается, если уж на то пошло:

HasAccessToFieldOneInMacroTypeOther
а кто проверяет?
ты вынужден везде в коде пихать HasAccessToFieldOneInMacroTypeOther
а ВИПРОС возвращает макротип уже скастрированный по правам - почувствуй разницу
...
Рейтинг: 0 / 0
25 сообщений из 288, страница 11 из 12
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как восстановить сессию
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]