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