Vert.x WildcardPermissionBasedAuthorization .match возвращает значение false

#vert.x

Вопрос:

У меня проблемы с пониманием того, как WildcardPermissionBasedAuthorization это работает (документы)

Следующий код возвращает false, что, насколько я знаю, означает, что пользователь не авторизован, хотя я ожидал бы, что по крайней мере одна из этих разрешений «или»будет соответствовать подстановочному знаку» t*».

 User user = User.create(new JsonObject().put("username", "testUser"));
user.authorizations().add("", PermissionBasedAuthorization.create("test"));
user.authorizations().add("", WildcardPermissionBasedAuthorization.create("t*"));

OrAuthorization or = OrAuthorization.create();
or.addAuthorization(PermissionBasedAuthorization.create("t"));
or.addAuthorization(PermissionBasedAuthorization.create("te"));
or.addAuthorization(WildcardPermissionBasedAuthorization.create("t"));
or.addAuthorization(WildcardPermissionBasedAuthorization.create("te"));
or.addAuthorization(WildcardPermissionBasedAuthorization.create("te*"));

or.match(user); //is false
 

Чего я пытаюсь добиться, так это предоставить моему пользователю доступ ко всему, что начинается с «t», а затем в моем обработчике указать, имеет ли пользователь доступ к «te»

Спасибо,

Fil

Ответ №1:

Хорошо, оказывается, вы можете поставить подстановочный знак только для всего раздела, разделенного двоеточием, например «информационный бюллетень:изменить:*».

отсюда