Azure Active Directory를 온프레미스 고객 AD에 연결

Azure Active Directory를 온프레미스 고객 AD에 연결

우리는 다양한 고객이 로그인할 수 있는 Windows Azure에서 실행되는 웹 응용 프로그램을 보유하고 있습니다. 최근 점점 더 많은 고객이 일종의 Single Sign On 솔루션이나 최소한 로컬/도메인 사용자와 로컬/도메인 사용자의 동기화를 요구하고 있습니다. 우리의 응용 프로그램에 존재합니다. 여러 가지 옵션을 살펴봤지만 나에게 실현 가능한 옵션을 실제로 찾지 못했습니다. 아래에는 제가 살펴본 내용이 나열되어 있지만 기본적으로 이 문제에 접근하는 방법에 대한 조언을 구하고 싶습니다.

이를 수행할 수 있는 제3자 서비스가 있지만 일반적으로 이를 구현하려면 당사와 고객 모두에게 일부 또는 많은 작업이 필요합니다. 이는 또한 고객 선호도에 따라 이러한 솔루션을 여러 개 또는 많이 구현해야 함을 의미할 수도 있습니다.

우리 고객의 전부는 아니더라도 대부분은 온프레미스 Active Directory를 보유하게 될 것이며 이를 애플리케이션에서도 사용할 수 있다면 완벽할 것입니다. 웹 앱을 온프레미스 AD에 연결하는 것은 실제로는 옵션이 아닙니다. 왜냐하면 시스템 관리자가 (당연히) 우리에게 이에 대한 액세스 권한을 부여하지 않기 때문입니다.

Azure에서도 AD를 설정할 수 있습니다. 그래서 온프레미스 AD에서 Azure의 AD로 동기화한 다음 거기에서 가져올 수 있을 것이라고 생각했습니다. 그러나 Microsoft의 Azure Active Directory Connect 도구를 테스트할 때 Azure 환경에 대한 관리자 로그인을 요청했습니다. 분명히 우리는 고객에게 Azure Portal에 대한 액세스 권한을 부여하고 싶지 않으므로 이 방법도 제대로 작동하지 않을 것 같습니다.

이 모든 것의 또 다른 문제는 제가 프로그래머이고 모든 AD 관련 내용이 제가 아는 범위에서 약간 벗어나서 잘못된 곳을 찾고 있을 수도 있다는 것입니다.

누구든지 이것에 대한 경험이 있고 올바른 방향을 알려줄 수 있습니까?

답변1

ADConnect는 온프레미스 디렉터리를 클라우드와 동기화하는 방법입니다. 초기 동기화를 설정하고 도구를 사용하여 다시 로그인하는 경우 동기화를 변경하려면 사용자 이름 비밀번호를 묻습니다. 설정하는 동안 로컬 관리자를 위한 DA 계정도 필요합니다. 두 계정 중 하나도 없거나 둘 다 없는 경우 설정을 완료할 수 없습니다.

귀하가 제안한 대로 Azure B2C가 귀하가 설정하려는 것입니다. 그렇지 않으면 사용자 이름/비밀번호를 묻는 데 어려움을 겪을 필요가 없도록 도메인과 고객 도메인 간에 ADFS 페더레이션을 설정하십시오. 귀하의 응용 프로그램이 클레임을 인식하고 ADFS를 구성할 수 있는 자체 Windows AD가 있다고 가정합니다.

ADFS 테스트 환경을 설정하려는 경우 4부분으로 구성된 블로그를 따라 첫 번째 랩을 구축했습니다. 여러분에게도 잘 작동할 수 있기를 바랍니다.

http://blogs.technet.com/b/askpfeplat/archive/2013/12/09/how-to-build-your-adfs-lab-on-server-2012-part-1.aspx http://blogs.technet.com/b/askpfeplat/archive/2013/12/23/how-to-build-your-adfs-lab-on-server-2012-part2-web-sso.aspx

답변2

SAML 인증을 지원하도록 애플리케이션을 구성하는 경우 고객은 AD와 작동하도록 ADFS(또는 기타)를 구성할 수 있습니다. 이는 일반적으로 타사 응용 프로그램에 대한 SSO가 처리되는 방식입니다.

작동 방식은 여전히 ​​ID와 애플리케이션에 대한 액세스를 관리하지만 고객은 이를 AD 사용자 이름을 포함할 수 있는 자신의 "클레임"에 연결할 수 있습니다. 이것이 ADFS 및 기타 페더레이션 ID 플랫폼이 수행하는 작업입니다(페더레이션 부분). 그러나 ID 공급자(귀하와 상대방) 간에 신뢰를 구축할 수 있는 방법을 제공해야 합니다.

귀하는 사용자 지정 ID 공급자를 생성하거나, 타사 서비스를 사용하거나, ADFS와 같은 페더레이션 서버를 배포할 수 있습니다. 그러나 PingFederate 및 Shibboleth와 같은 다른 것(상용 및 오픈 소스 모두)도 있습니다. 말 그대로 수백 가지 옵션이 있습니다. SDK를 원하는 경우 - Ping Identity(PingFederate 개발자)는 여러 언어(Java, C# 등)에 대한 SDK를 제공합니다. 나는 거기에 도움이 되는 오픈 소스 SDK도 있다고 확신합니다.

ID는 복잡한 주제입니다. 전담 회사나 팀에 더 많이 오프로드할수록 더 나은 결과를 얻을 수 있습니다. (Azure B2C는 다른 답변에 명시된 대로 미리 보기 상태이지만 더 빠르게 진행하려면 타사를 살펴보세요.)

관련 정보