Это обычно достаточно, чтобы обеспечить только URL-адреса в простых случаях. Подумайте о безопасности уровня метода в качестве дополнения к безопасности уровня URL. Например, простая проверка того, что пользователь имеет определенную роль для доступа к некоторому URL-адресу в вашем приложении, может быть достигнута с помощью защиты уровня URL.
Однако есть случаи, когда вам нужна более мелкая защита. Если вы хотите разрешить доступ к данному продукту (id = 5) только его создателю, вы не получаете доступ только с защитой уровня URL. Но вы можете достичь этого с помощью безопасности уровня метода.
Рассмотрите этот URL.
https://myapp.com/products/5
Вы можете проверить, имеет ли пользователь доступ к этому URL-роли роль REQUIRED_ROLE.
<security:intercept-url pattern="/products/**" access="hasRole('REQUIRED_ROLE')" />
Если вам необходимо убедиться, что пользователь также является создателем продукта, вам нужно что-то вроде этого:
...
@PreAuthorize("#product.creator == authentication.name")
public void doSomething(Product product);
...
что вы имеете в виду под «обеспеченному метод»? – OhadR