В данном случае все атрибуты будут безопасными. Польза этого метода проявляется при массовом присвоении атрибутов через $model->attributes = $_POST[‘Model’]. Здесь осуществляется проход по массиву $_POST[‘Model’] и идет присвоение вида $model->attrubteName = $_POST[‘Model’][‘attributeName’]. Теперь представьте, что нехороший человек вместе с обычными данными отправил еще и id. В этом случае он тоже будет присвоен модели, и данные у вас сохранятся не туда, куда надо. Очевидно, дыра, которая устраняется исключением этого поля из safeAttributes().
К SQL-инъекциям это отношения не имеет, против них есть другие встроенные средства. Большинство методов ActiveRecord, обращающихся к БД, в этом плане безопасны.
Есть еще какие нибудь потенциальные угрозы от которых необходимо защищать ресурс построенный на YII?
В настояшее время у меня из защиты только валидация введеннных данных и вот собираюсь сайф атрибут использовать еще дополнительно потому что использую массовые присвоения конечно же.
Возможно кто-то посоветует что еще надо закрыть и защитить хотябы от лоха , потому что профессиональный хакер конечно вскроет все что угодно
Неплохо было бы скачать и использовать Yii последней версии Конечно, потребуются определенные изменения в коде, но думаю, что это окупится. Насколько я знаю, метод safeAttributes() есть только в версии 1.0. В 1.1 safe атрибуты задаются прямо в rules().