저는 현재 학사 학위 논문을위한 매우 모듈화되고 플러그인 기반의 프레임 워크를 만들고 있습니다. 주요 아이디어는 응용 프로그램 구조 내에 plugins
이라는 폴더가 있으며 특수 인터페이스 IPlugin
을 준수하는 컴파일 된 플러그인 (예 : .dll
- 파일)을 드롭 할 수 있다는 것입니다. 그런 다음 응용 프로그램은 사용자가 선택하는 플러그인을 사용하여 작업을 실행합니다. 따라서 PDF 파일에서 작업을 한 번 수행하고 싶다면 PdfPlugin
을 선택하고 워드 문서에서 한 번만 작업하려면 DocPlugin
을 선택하십시오.플러그인이 유해한 코드를 실행하는 것을 방지하는 방법
출력도 인터페이스에 정의되어 있으므로 모든 플러그인은 동일한 데이터 구조를 반환합니다. 실제 작업은 각 라이브러리마다 다릅니다.
이제 응용 프로그램이 인터페이스에 정의 된 메소드를 호출하기 만합니다. ParseDocument()
등, 제 3 자에 의해 개발 된 플러그인이 유해한 코드를 실행하는 것을 어떻게 막을 수 있습니까?
저는 .NET3.5 (아마도 4로 변경 될 예정이며 아직 결정되지 않았습니다)와 C#에서 작업 중입니다.
플러그인에서 원하는 코드 액세스 보안 권한을 쿼리 할 수 있습니까? Android의 의도와 비교하여? 나는. 플러그인을로드하기 전에 사용자에게 확인 메시지를 표시 할 수 있도록 플러그인에서 요구하는 사용 권한을 결정할 수있는 플러그인 프레임 워크가 필요할 것입니다. 아니면 내 반대편 주위에, 내 응용 프로그램에서 사용 권한을 적용하는 다음 플러그 인 단순히 실패/허용 된 권한 외부에서 뭔가를 시도 할 예외를 던질? – AaronLS
질문의 범위를 벗어나는 "방법"을 요구하지는 않지만, CAS의 두 가지 다른 접근 방식 중 어느 것이 적절한 지 궁금합니다. – AaronLS