Создание службы Kephas в запечатанном виде - PullRequest
0 голосов
/ 04 марта 2019

Мне очень нравится, как можно переопределить сервисы в Kephas Framework, предоставив атрибут OverridePriority.Однако мне нужно, чтобы некоторые сервисы больше не переопределялись, чтобы запретить, чтобы какой-то внешний код из плагинов переопределял мои сервисы безопасности.Как я могу это сделать?

1 Ответ

0 голосов
/ 05 марта 2019

Самый простой ответ: укажите наивысший приоритет переопределения для вашего сервиса.

[OverridePriority(Priority.Highest)]
public class MyServiceImpl : IMyService {
    // ...
}

Однако может возникнуть проблема, если зарегистрировано более одной службы с наивысшим приоритетом, в этом случае выбрасывается AmbiguousMatchException.Я имею в виду, вы должны контролировать свой код, чтобы избежать таких случаев.Если вы считаете, что существует вероятность того, что среда выполнения приложения загрузит вредоносную сборку, предоставьте собственную службу AppRuntime, которая может проверять сборки перед их загрузкой.

Проверьте https://github.com/kephas-software/kephas/wiki/Application-Services#override-priority для получения дополнительной информации.на эту тему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...