양식을 읽을 수 있지만 숨겨질 테이블에 대한 MS 액세스 사용자 수준 보안

StackOverflow https://stackoverflow.com/questions/930654

  •  06-09-2019
  •  | 
  •  

문제

사용자 수준의 보안이 누군가가 양식에 액세스 할 수 있지만 테이블에 액세스 할 수 없습니까? "select"명령을 사용하여 테이블에 연결된 양식이 있습니다. "업데이트"또는 "삭제"가 아닙니다. 사용자가 내 양식에 액세스하기를 원하지만 기본 테이블에서 세부 사항을 볼 수 있기를 원하지 않습니다. 사용자 수준 보안 마법사에서 모든 종류의 조합을 시도했지만 어떤 이유로 든 내 양식이 공허하게됩니다. 어떤 아이디어? 그건 그렇고, 나는 Access 2003에 있습니다.

올바른 솔루션이 없습니다

다른 팁

MDE를 만들어 사용자에게 줄 수 있습니다. 이렇게하면 사용자는 제공 한 사용자 인터페이스 외에는 아무것도 볼 수 없습니다.

테이블이 양식 및 쿼리와 동일한 액세스 데이터베이스에 있으면 먼저 "데이터베이스를 프론트 엔드 및 백엔드로 분할해야합니다. 보다:

http://databases.about.com/od/tutorials/ss/splitaccessdb.htm

이 작업을 수행하는 방법에 대한 정보. 프론트 엔드에는 테이블 이외의 모든 것이 포함되어 있습니다. 백엔드에는 테이블이 포함되어 있습니다. 프론트 엔드는 프론트 엔드의 "링크 된 테이블"객체를 사용하여 백엔드 테이블에 연결됩니다.

데이터베이스가 분할되면 액세스에서 프론트 엔드를 열고 메뉴 표시 줄에서 도구/데이터베이스 유틸리티/MDE 파일을 선택하여 MDE를 만듭니다. MDE는 사용자에게 제공하는 것입니다. 객체를 설계 할 수 없다는 점을 제외하고는 다른 데이터베이스와 같은 방식으로 열립니다.

Frontend에 자동 exco 매크로가 정의되어 있는지 확인하여 사용자가 MDE를 열면 진입 점이 있습니다. 사용자는 MDE의 객체를 볼 수 없으므로 첫 번째 양식을 열 수있는 AutoExec 매크로가 없으면 MDE를 열 때 아무 일도 일어나지 않습니다.

사용자가 파일/열기 대화 상자와 함께 백엔드 데이터베이스에 연결할 수있게하여 MDE에서 링크 된 테이블을 관리 할 수있는 기능이 필요한 경우 다음 기사를 참조하십시오.

http://www.mvps.org/access/tables/tbl0009.htm

물론,이 중 어느 것도 사용자가 백엔드 데이터베이스를 열지 못하게합니다. 더 강력한 보안이 필요한 경우 백엔드 데이터베이스를 SQL Server Express로 향상시킬 수 있습니다. 추가 정보는 여기에 있습니다 :

http://office.microsoft.com/en-us/access/ha102755371033.aspx

당신이 찾고있는 것은 RWOP 쿼리입니다. 즉, "소유자 허가로 실행"을 의미합니다.

프론트 엔드 및 백엔드 데이터베이스에서 이미 보안 마법사를 실행하고 사용자가 테이블을 읽도록 권한을 제거했다고 가정하면 양식의 레코드 소스로 저장된 쿼리를 만듭니다. 쿼리 속성에서는 기본적으로 권한을 "사용자"로 실행하도록 설정됩니다. 이를 "소유자"로 변경하고 쿼리를 저장하십시오. 쿼리는 쿼리의 소유자가 가진 기본 테이블의 모든 권한으로 실행됩니다. 완전한 권한으로 관리자로 실행중인 경우 저장된 쿼리의 권한을 읽기 전용으로 설정하거나 테이블에 대한 읽기 전용 액세스가있는 사용자 로그온에서 쿼리를 작성하려면 훨씬 쉽습니다. 전자를하기 위해).

일부 경고 :

  1. 사용자 수준 보안은 까다 롭습니다. ULS 보안 백서에 요약 된 한 단계조차도 놓치면 앱이 확보되지 않습니다. 이 테스트 방법은 기본 작업 그룹 파일로 액세스를 열고 로그인 한 데이터베이스의 객체에 액세스 할 수 있는지 확인하는 것입니다. 가능하다면, 당신은 줄을 따라 어딘가에 실수를했습니다.

  2. 사용자 수준의 보안은 원하는 사람이라면 갈라집니다. 이것은 그것이 유용하지 않다는 것을 의미하지는 않습니다. 그것은 단지 방탄이 아니라는 것을 의미합니다. 나는 보안이 기술적 인 문제만큼 많은 사람들의 문제를 고려하기 때문에 그다지 걱정하지 않습니다. 직원들은 직원들에게 그들의 일을하기에 충분한 특권을 부여해야하며, 그들이 특권을 남용하지 않을 것이라고 믿습니다. 당신은 그들에게주었습니다.

  3. Accdb 형식을 사용하는 경우 ACCDB 형식을 사용하는 경우 RWOP 쿼리를 사용할 수 없습니다. 그러나 MDB 형식을 사용하는 경우 A2007에서는 잘 작동합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top