Оценить алгоритмы объединения XACML 3.0 - PullRequest
0 голосов
/ 08 января 2019

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

политика p1: - op: переопределение разрешений

  • правило: разрешить, если совпадают все: группа = персонал, ресурс = файл1

  • правило: разрешить, если совпадают все: группа = студент, ресурс = файл2

  • правило: отказать в случае совпадения: любое

Политика p2:

  • op: deny-overrides

  • правило: запретить, если совпадают все: время [MBP] = ночь

  • правило: разрешить, если совпадают все: время [MBP] = день

полис p3:

  • op: отменить-переопределить

  • полис: p1

  • полис: p2

Оцените для каждой политики следующие запросы q1, q2 и q3:

  • q1 = {(группа, персонал), (ресурс, файл1), (время, день)}

  • q2 = {(группа, студент), (ресурс, файл2), (время, ночь)}

  • q3 = {(группа, персонал), (ресурс, файл1)}

Ответы [ 2 ]

0 голосов
/ 10 января 2019

Другой ответ является подробным и в значительной степени правильным, за исключением двух случаев, когда в Цели правила отсутствует атрибут, для которого для MustBePresent установлено значение true.

В этом ответе будут рассмотрены только те случаи.

полис p2 - запрос q3

  • rule: deny, если соответствует всем: time [MBP] = night -> Indeterminate {D} из-за пропущенного атрибута time и MustBePresent = true, а эффект правила - Deny
  • правило: разрешить, если совпадают все: время [MBP] = день -> не определено {P} по аналогичной причине
  • op: denyOverrides -> Indeterminate {DP}

Результат оценки - неопределенный {DP}

policyset p3 - запрос q3:

  • политика p1
    • правило: разрешить, если совпадают все: group = staff, resource = file1 -> Permit
    • op: allowOverrides -> Permit независимо от результата любых других правил
  • policy p2 -> Indeterminate {DP}, как объяснено в предыдущем случае
  • op: denyOverrides -> Indeterminate {DP}

Результат оценки - неопределенный {DP}

Ссылки

Спецификация XACML 3.0 содержит все детали, необходимые для вашего понимания

0 голосов
/ 08 января 2019

Результаты оценки с использованием только P1

  • q1 = {(группа, персонал), (ресурс, файл1), (время, день)}
    • Ответ: Разрешение. Первое правило в P1 вступает в силу, и алгоритм объединения останавливает процесс там. Время суток не влияет на принятие решений.
  • q2 = {(группа, студент), (ресурс, файл2), (время, ночь)}
    • Ответ: Разрешение. Второе правило в P1 вступает в действие, и алгоритм объединения останавливает процесс там. Время суток, опять же, не влияет на принятие решений.
  • q3 = {(группа, персонал), (ресурс, файл1)}
    • Ответ: Разрешение. По сути это то же самое, что и q1.

Результаты оценки с использованием только P2

  • q1 = {(группа, персонал), (ресурс, файл1), (время, день)}
    • Ответ: Разрешение, поскольку весь доступ разрешен в дневное время. Правило 1 внутри P2 не применяется. Правило 2 предоставляет доступ.
  • q2 = {(группа, студент), (ресурс, файл2), (время, ночь)}
    • Ответ: Запретить, потому что весь доступ запрещен в ночное время. Применяется правило 1 внутри P2. Алгоритм объединения таков, что обработка останавливается после правила 1.
  • q3 = {(группа, персонал), (ресурс, файл1)}
    • Ответ: Не применимо. Эти два правила срабатывают, только если было указано время суток, что не относится к данному запросу. Поэтому оценка заканчивается на NotApplicable.

Результаты оценки с использованием P3 (комбинация P1 и P2)

  • q1 = {(группа, персонал), (ресурс, файл1), (время, день)}
    • Ответ: Доступ разрешен, поскольку персоналу разрешено просматривать файл1 в дневное время.
  • q2 = {(группа, студент), (ресурс, файл2), (время, ночь)}
    • Ответ: Доступ запрещен независимо от того, что студент пытается просмотреть. В этом случае ночная политика превосходит все остальные политики из-за алгоритма комбинирования с избыточной архивацией (deny-overrides) в P3.
  • q3 = {(группа, персонал), (ресурс, файл1)}
    • Ответ: Доступ разрешен, поскольку персоналу разрешено просматривать файл1, а время не указано.

Примечания

Политика, которая предоставляет доступ в дневное время, не обязательна. На самом деле, это может даже открыть доступ, который вы не хотели бы иметь. Например, учитывая текущую политику, студент может редактировать свои собственные оценки экзамена, если это дневное время.

...