MySQL을 사용하여 개발중인 webapp에서 행 수준 보안을 에뮬레이트하려고합니다.Webapp : MySQL : 행 수준의 보안. 프로/죄수? 이 작업을 수행하는 더 좋은 방법은?
이 방법 사용 : 모든 사용자와 관련된 데이터가 테이블 열의 적절한 인덱싱과 함께 저장되는 필수 테이블이있는 데이터베이스를 만듭니다.
사용자 ID를 기반으로 특정 사용자에게 mysql '보기'를 생성합니다.
행 수준의 보안을 위해 모든 사용자에 대해 mysql 계정을 만들고보기에 '권한 부여'권한을 설정해야합니다.
웹 인터페이스의 경우 PHP 기반 MVC 프레임 워크가 사용됩니다.
하지만, 내 연구에 따르면 :
1] Having separate mysql account per user "make the webapp less secure".
2] Having separate mysql account per user "increases the disk I/O".
질문 :
1] How does creating mysql user per webapp user make the webapp less secure?
2] Does the disk I/O increase considerably?
3] Is there a better way to implement row-level-security in MySQL?
4] What are the pros/cons of implementing row-level-security by the above method?
왜 행 레벨 보안을 고려하고 있습니까?
I need row level security because there are rows which will be shared between multiple users & have 1 or 2 owners to it. Only these owners can delete/modify them.
나를 조롱하는 대신, 내가 할 수있는 것을 제안하거나 읽을 수 있습니까? – ThinkingMonkey
그것은 당신을 조롱하지 않지만, 그렇게 보이는다면 사과드립니다. 나는 왜 당신이 이런 식으로하려고하는지조차 궁금해하고 있습니다. 왜 "행 수준의 보안"이 필요합니까? 이런 식으로 진행하는 이유는 무엇이며, 그렇게함으로써 방지 할 수있는 것은 무엇입니까? 디스크 I/O에 관해서는 사용자,보기 등을 만드는 것이 디스크 I/O에 영향을 미칠 수있는 부분이 아닙니다. (예 : 수천 명의 새로운 사용자가없는 한, 디스크 I 뷰를 처리 할 때/O). –
여러 개의 사용자가 공유 할 행이 있고 행의 소유자가 1 명 또는 2 명이 있으므로 행 수준의 보안이 필요합니다. 이러한 소유자 만 삭제하거나 수정할 수 있습니다. *** 더 나은 접근법에 대해 배울 수있는 곳이 있다면 // 제안하십시오. *** – ThinkingMonkey