Задать вопрос
  • Как в микросервисах ограничивать доступ на уровне сущностей?

    @evgeniykhist Автор вопроса
    Java Solution Architect
    Я пришел к следующему решению.

    1. Использовать ACL модель безопасности. Каждый объект в системе имеет связанный с ним набор разрешений (permissions). Разрешения определяют, кто и какие действия могут выполнять над объектом.
    2. Микросервисы отвечают за авторизацию на уровне сущности и фильтрацию объектов в ответах на основе разрешений этих объектов.
    3. Служба централизованного контроля доступа (Access Control Service) отвечает за создание, обновление и удаление разрешений для всех объектов в системе. База данных Access Control Service является основным хранилищем разрешений объектов.
    4. Разрешения, хранящиеся в базах данных микросервисов, которые синхронизируются с базой данных Access Control Service с использованием event-carried state transfer. Каждый раз, когда изменяются разрешения, событие отправляется брокеру сообщений (message broker). Микросервисы могут подписываться на эти события для синхронизации разрешений.
    5. API Gateway может использоваться как дополнительный уровень защиты. API Gateway может напрямую обращаться к Access Control Service (RPC) для проверки разрешений объектов ответа или загрузки недавно отозванных разрешений.
    5a461ac4b5fd0699968243.png

    Данный подход имеет следующие особенности:

    1. Требуется возможность уникальной идентификации каждого объекта в системе (например, UUID).
    2. Синхронизация разрешений в микросервисах eventual consistent. В случае разделения сети (partition) между брокером сообщений и микросервисом, разрешения не будут синхронизироваться. Это может быть проблемой в случае с отзывом разрешений. Решение этой проблемы - отдельная тема.
    Ответ написан
    Комментировать
  • Стоит ли покупать macbook pro 13 2020?

    mr_qpdb
    @mr_qpdb
    ⏱ - is not eternal
    Если вы будете работать с нейронными сетями, то Вам потребуется работать со специальным IDE, который предназначен для этого. В среднем, все IDE'ешки рекомендуют иметь 8гб оперативной памяти (минимум 4гб). Таким образом получается, что при использовании IDE - считай половина> оперативной памяти будет занято самим IDE. Вам так же потребуется работать с браузерами, это так-же занимает память, особенно гугл. Выходит, что оперативная память у Вас будет забита почти на полную. Представьте, что если Вам еще потребуется открыть каки-либо приложения, или поставить линукс на виртуалбокс. То вам категорически не хватит 8гб, как бы это горько ни звучало.
    Лично я, работаю на 4гб, и из-за этого приходится обходиться без IDE, без браузеров при написании кода и куча-куча неудобств. А макбук покупают для удобств, тем более человек его не каждый раз себе может позволить. Поэтому считаю, что следует покупать от 16гб, ведь макбук для этого и создан, чтобы радовать пользователя, а не приносить ему неудобства
    Ответ написан
    1 комментарий
  • Как стать тренером

    IvanFF
    @IvanFF
    Как зеленый может учить других зеленых стать красным?
    Ответ написан
    1 комментарий
  • Как включить цвет в консоли asterisk-a?

    13Arhangel
    @13Arhangel Автор вопроса
    тыжпрограммист :)
    епсель мопсель. ответ лежал прямо перед носом. Пока не понимаю как это повлияло, но помогло.
    В общем: остановил астериск core stop now, потом запустил asterisk -cf, и вуаля, "лошадка с радужным хвостом" вернулась :) . Еще раз остановил, запустил asterisk, зашел asterisk -rvvv - все ок :)
    Ответ написан
    Комментировать
  • Где найти такой слайдер?

    Готового решения не подскажу, но если никто другого не посоветует — посмотрите как реализовано на сайте который мы когда-то делали, с похожей крутилкой, на jQuery. Только там без стрелочек:
    lalubie.podhod.ru
    (Практика показала, кстати, что не все этот элемент быстро понимают).
    Ответ написан
    Комментировать