우리는 비슷한 상황이있다. 내부 사용자는 AD에 대해 외부 사용자를 ADAM 저장소와 비교합니다. 데이터베이스 접근 방식과 다르지만 두 개의 사용자 저장소가 있다는 점에서 비슷합니다. AD에 대한 우리의 인증은 보안 영역에서 이루어지며 DMZ의 웹 서버는 인증을 위해 보안 영역으로 웹 서비스 호출을합니다. 집회가 무엇을 원하는지 모르지만 접근 방법이 괜찮은 것 같습니다.
편집은 의견을 대답 :
- 아담 저장소는 데이터베이스와 동기화되지 않습니다.
- 기본적으로 웹 서비스가 사용되도록 구성된 두 개의 공급자가 각 저장소에 하나씩 있습니다. 사실, 사용자가 레거시 시스템에서 마이그레이션 된 기간 동안 3 명이있었습니다. 사용자가 어느 상점에 있었는지 확인하기 위해 응용 프로그램은 가장 일반적인 공급자 (이 경우에는 ADAM)에게 먼저 물었고 사용자가 없으면 다음 공급자로 이동합니다.
- 엔드 포인트는 중간 계층 서버에서 실행되는 방화벽 내부의 웹 서비스입니다. 그 서버는 IIS를 실행했기 때문에 기술적으로는 웹 서버 였지만 실제로는 중간 계층 서버는 몇 가지 웹 서비스가 아닌 다른 페이지 나 호스트를 제공하지 않았습니다.
- 두 가지 유형의 외부 사용자가있는 것 같습니다. 정말로 내부 사용자 (AD에서)와 진정 외부 (DB에서) 인 사용자. 매우 우아하지는 않지만, 로그인 화면이 각각 2 개씩 있습니다. 내부 사용자의 외부 로그인 화면을 제외한 다른 사용자에게 외부 로그인 화면을 게시하지 말고 실제 외부 로그인 화면을 게시하십시오. 조금 해키지만 작동 할거야. 그렇지 않으면 로그인 과정에서 사용자 유형을 식별해야합니다.
어떤 스토어 사용자가 인증하는지 결정하기 위해 어떤 접근 방식을 사용 했습니까? 아니면 ADAM db가 AD와 동기화되어 있습니까? Webservice 방식은 흥미 롭습니다. 공유하거나 독점적으로 사용할 수있는 방식을 기반으로합니까? 소스를 공유 할 수 없다면 아키텍처를 공유 할 수 있습니까? 엔드 포인트가 방화벽 내부의 다른 웹 서버입니까, 아니면 Windows 서비스를 엔드 포인트로 만드셨습니까? –
우리의 경우 내부 사용자는 주로 건물 외부에 있습니다. 따라서 외부 고객과 동일한 방식으로 웹 서버에 액세스합니다. 나는 그들에게 웹 서버에 별도의 계정과 암호가있는 대신 자신의 광고 자격 증명을 사용할 수 있기를 바랍니다. 방화벽 내부에 별도의 웹 서버를 만들고 "내부"사용자가 로그온하는 등의 접근을 피하고 싶습니다. –