Что означает urn:oasis: имена:tc:xacml:3.0:функция: строка-содержит?

#authorization #xacml #xacml3 #abac #alfa

#авторизация #xacml #xacml3 #счеты #альфа

Вопрос:

Я хотел бы знать объяснение приведенной ниже функции urn:oasis: имена: tc: xacml:3.0:функция: строка-содержит

У меня есть требование, чтобы строка идентификатора пользователя сравнивалась со строками, содержащими Suresh, suresh pelluru, Suresh prakash, Suresh Group и т.д…

Какая функция используется для сравнения с suresh (чувствительна к регистру)

Спасибо, Суреш Пеллуру.

Ответ №1:

У вас есть несколько функций сравнения строк в XACML:

  • urn:oasis:имена:tc:xacml:1.0:функция: строка-равна
  • urn:oasis: имена:tc:xacml:3.0:функция:строка-равна-игнорируется-регистр
  • urn:oasis: имена:tc: xacml:1.0:функция:строка-больше-или-равна
  • urn:oasis: имена:tc: xacml:1.0:функция: строка-меньше-чем
  • urn:oasis: имена:tc: xacml:1.0:функция:строка-меньше-или-равна
  • urn:oasis: имена:tc: xacml:1.0:функция: строка-находится-в
  • urn:oasis:имена:tc:xacml:3.0:функция: строка-начинается-с
  • urn:oasis: имена:tc:xacml:3.0:функция:строка-заканчивается-на
  • urn:oasis: имена:tc:xacml:3.0:функция: строка-содержит
  • urn:oasis: имена:tc: xacml:1.0:функция: строка-регулярное выражение-соответствует
  • urn:oasis: имена:tc: xacml:1.0:функция: строка-как минимум-один-член-из

string-contains принимает два аргумента типа данных string и возвращает логическое значение. Функция возвращает, true если вторая строка содержит первую строку, и false в противном случае. Проверка на равенство выполняется так, как определено для urn:oasis:names:tc:xacml:1.0:function:string-equal .

Пример:

  • string-contains("alice", "alice is in the woods") : это возвращает true.
  • string-contains("alice is in the woods", "alice") : это возвращает false .

Весь список функций доступен здесь.

Ответ №2:

Согласно вашему требованию, если вам нужно сравнить имя пользователя из списка имен пользователей с учетом регистра, вы можете использовать один из способов, как показано ниже, в вашем условии / цели и т.д.:

 <Apply FunctionId=”urn:oasis:names:tc:xacml:3.0:function:any-of”>
 <Function FunctionId=”urn:oasis:names:tc:xacml:1.0:function:string-equal”/>
  <AttributeValue DataType=”http://www.w3.org/2001/XMLSchema#string”>suresh</AttributeValue>
   <Apply FunctionId=”urn:oasis:names:tc:xacml:1.0:function:string-bag”>
      <AttributeValue DataType=”http://www.w3.org/2001/XMLSchema#string”>Suresh</AttributeValue>
      <AttributeValue DataType=”http://www.w3.org/2001/XMLSchema#string”>suresh</AttributeValue>
      <AttributeValue DataType=”http://www.w3.org/2001/XMLSchema#string”>suresh pelluru</AttributeValue>
      <AttributeValue DataType=”http://www.w3.org/2001/XMLSchema#string”>Suresh Prakash</AttributeValue>
   </Apply>
</Apply>