Почему в ALFA нет встроенной ДЕЛЕГАЦИИ (от Axiomatics)?
Я знаю, что в ALFA нет такого понятия, как ключевое слово делегации. Но я действительно хотел бы знать, почему... Это потому, что это было слишком сложно реализовать, или была другая причина?
1 ответ
Реализовать делегирование в ALFA было бы относительно просто, поскольку, в конце концов, все, что вам нужно, это корневые политики, с одной стороны, и доверенные политики, с другой. Доверенные политики будут иметь еще один элемент, называемый PolicyIssuer
, Таким образом, все, что нам нужно в ALFA - это возможность установить эмитента.
Тем не менее, этого недостаточно. Во время выполнения ядро (PDP) должно будет определить цепочку доверия между корневыми и доверенными политиками. Это происходит через PolicyIssuer
, Различные реализации будут иметь разные способы сделать это. Мы сделали это в Axiomatics, используя подписанные политики. Это подразумевало наличие ключей для подписи. Причина, по которой мы не предусмотрели делегирование в ALFA, заключается в том, что никто его не использует. Административное делегирование - отличная идея (наш технический директор в Axiomatics написал профиль), но оно используется редко.