2014-03-03 3 views
2

그래서 나는 각 사용자에게 권한이있는 사용자 로그인이 필요한 응용 프로그램을 만들었습니다. 이제이 모델은 많은 사용자가있을 수있는 mysql의 데이터베이스와 닮았으며 각각의 사용자는 자신의 권한을가집니다.mysql 사용자 대 사용자 데이터가있는 사용자 정의 테이블 만들기

그래서 현재 내 응용 프로그램의 각 사용자에 대해, 나는 사용자 쿼리를 만든 다음을 부여 실행 권한을 요구하고있다

내 질문

어떻게 좋은 지금의로 완벽하게 잘하고 있어요 내 현재 접근법? (오른쪽, 모든 MySQL의 장면 뒤에 무엇을 먹으 렴 후?)

나는, 내가 내 자신의 사용자 테이블과 특권 테이블을 만들고 그에 따라 쿼리를 작성 할 수 있습니다 알고 있지만, 문제는, 내 현재의 접근 방식이

+0

제대로 이해했다면 응용 프로그램의 모든 사용자에 대해 DB 사용자를 생성하게됩니다! IMO, 당신은 접근이 끔찍한 잘못입니다! 응용 프로그램 사용자는 데이터베이스의 사용자 개념과 동일시해서는 안됩니다. – Incognito

+0

나는 그런 것을 추측했다. 그러나 나는 알고있다, 그것이 얼마나 나쁜지에 관해 알고 싶다. 실적이나 다른 점이 좋지 않습니까? 나는 mysql이 사용자 명령을 올바르게 작성하는 것과 같은 일을하고있을 것인가? –

+0

큰 질문 나는 똑같은 것을 궁금해했다. 너는 나에게 많은 어려움을 저장했다! – Clocker

답변

2

이 방법의 많은 DIS-장점이있을 수있다, 약간은 사용자가 매우 자주 여기에있을 수있는 잠금 삽입합니다 그래서 만약 사용자 권한, MyISAM 테이블에 MySQL의에서 관리되기 때문에

  1. below- 있습니다.

  2. 권한이 플러시 될 때까지는 적용되지 않으며 명령을 플러시하고 테이블을 잠그면 잠시 동안 모든 응용 프로그램 쿼리를 차단할 수 있습니다.

  3. 자신의 사용자 테이블에서 당신이 등

  4. 쉬운 관리와 같은 사용자 이름, 이메일, 작성 시간, 암호 업데이트 시간을 절약 할 수있는 동안 당신은,이 시스템 테이블에서 사용자의 중요한 추가 정보를 저장할 수 없습니다

    mysql 사용자 테이블에 제한된 프로필을 만들고이 미리 정의 된 프로필로 사용자 그룹을 매핑 할 수 있습니다.

  5. 이것으로 사용자는 데이터베이스에 연결할 수 있지만 쿼리는 활성/비활성 상태로이 테이블을 조인 할 수 있으므로 응용 프로그램에서 특정 작업을 수행하도록 제한 할 수 있습니다.