Oracle
 sql >> база данни >  >> RDS >> Oracle

Мнения относно удостоверяването между нивата на приложение и база данни

В повечето уеб приложения вашият модел на защита се дефинира на ниво бизнес логика, а не на ниво данни.

Например, способността ми да редактирам публикация в Stack Overflow не се контролира от способността ми да чета/пиша в таблицата "posts" - всъщност вероятно дори не бихте могли да проектирате схема на база данни, която да ви позволи да внедрите ниво на база данни сигурност на това ниво. Вместо това има слой на бизнес логиката, който сравнява моите привилегии с действието, което се опитвам да предприема (предполагам); сигурността е внедрена на ниво бизнес логика.

Честно казано, не виждам почти никаква полза от преминаването на идентификационни данни към слоя база данни - ако по някакъв начин бях заобиколил бизнес логиката за контролиране на това кой може да редактира SO публикации, контролите за "четене/запис" на базата данни нямаше да го попречат и одитът нямаше наистина не ти помагам.

Виждам МНОГО недостатъци - не на последно място фактът, че ще разделите логиката си за оторизация на две (бизнес логика и база данни) и ще въведете всички видове забавни режими на отказ със синхронизиране на акаунти във вашия слой бизнес логика и слой база данни (потребителите променят своите парола или напускане на уеб сайта). Не мога да си представя как разумно бихте тествали и отстранявали грешки във всичко това - какво се случва, ако краен потребител получи грешка, свързана с привилегиите на базата данни?



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Грешка при свързване с Oracle ODBC (използвайки стандартните ODBC драйвери на Oracle)

  2. Искате да конвертирате от символен формат в числов формат с десетичен знак

  3. MySQL:как да направите сигурност на ниво ред (като виртуалната частна база данни на Oracle)?

  4. Променете идентификатора на Oracle JDBC Thin Client

  5. Ред на параметрите на съхранената процедура на C# Oracle