2016-11-17 2 views
0

Azure AD에서 모든 사용자 정보를 얻기 위해 Azure Graph API를 사용하고 있습니다. 그런 다음 해당 사용자를 내 애플리케이션에 추가합니다. 로그인 페이지에서 사용자 이름과 비밀번호를 AD에 입력하길 원합니다. 내 테이블에 비밀번호를 저장하고 싶지는 않지만 인증 확인을하고 싶습니다. 이 작업을 수행하는 그래프 API에 휴식 서비스가 있습니까?Graph API를 사용하여 가져온 Azure AD 사용자 인증

+0

그것은이다

여기 enter image description here

는 참조 용으로이 흐름을 사용하는 코드 샘플입니다 데이터베이스에 사용자 이름/암호를 저장하는 것은 좋지 않습니다. 일반적인 접근법은 인증을 위해 응용 프로그램을 Azure AD로 리다이렉트시키고 Azure AD가 사용자에 대한 정보가 포함 된 클레임을 반환하도록하는 것입니다. 데이터베이스에 정보를 저장하여 응용 프로그램에 다시 로그인 할 때 식별 할 수 있습니다. –

+0

내 암호를 저장하지 않습니다. SAML 기반 인증을 제공하고 있습니다. 또한 나는 그들이 자신의 자격 증명을 제공하는 나의 보통의 로그인 페이지를 통해 로그인 할 수 있도록하고 싶다. 나는 그것을 어디에도 저장하지 않을 것이다. Azure AD API를 사용하여 인증하려고합니다. – Jerry

답변

1

로그인 페이지에서 사용자 이름과 암호를 AD에 입력하려고합니다. 내 테이블에 비밀번호를 저장하고 싶지는 않지만 인증 확인을하고 싶습니다. 이 작업을 수행하는 그래프 API에 휴식 서비스가 있습니까?

그래프 API에 대한 휴식 서비스와 관련이 없습니다. 귀하의 서비스를 어떻게 보호하는지에 따라 결정됩니다.

예를 들어 Microsoft는 Azure AD에 의해 보호되는 Azure Graph API를 제공합니다. 그리고 Azure AD는 OAuth 2.0을 지원하여 액세스 토큰을 가져와 보호 된 리소스에 액세스합니다.

설명 된 시나리오에서 OAuth 2.0 코드 부여 흐름을 사용할 수 있습니다. 이 흐름에 대한 세부 단계는 아래 그림을 참조하십시오

active-directory-dotnet-graphapi-web

active-directory-dotnet-graphapi-console

+0

내 로그인 포털에서 사용자 이름과 비밀번호를 묻습니다. 그들이 사용자 이름을 제공하면 클라이언트 id, 임차인 ID 및 비밀 키 (액세스 토큰을 생성하는 데 사용함)를 얻을 수 있습니다. 이제이 액세스 토큰을 사용하여 Azure AD에 연결할 수 있습니다.이 세 가지 필드가 구성 중에 올바르게 제공되었고 올바른 Oauth임을 의미합니다. Azue AD 자격증 명을 사용하여 응용 프로그램에 로그인하려는 사용자를 인증하려고합니다. – Jerry

+0

@ Jerry 현재 문제가 있습니까? 나는 당신이 처리 한 질문을 따라갈 수 없습니다. –

+0

예. OAuth 토큰을 사용하여 Azure Directory에서 사용자를 가져올 수 있습니다. 이제 가져온 사용자가 내 애플리케이션에 로그인하려고 시도 할 때 저들이 하늘색 광고에 적합한 자격 증명을 입력하고 있는지 확인하고 싶습니다. 현재이 서비스를 호출하여 사용자 비밀번호 프로필을 가져 와서 비밀번호를 입력 된 비밀번호와 비교합니다. https://graph.windows.net/%s/users/"+userName+"/?api-version=2013-04-05 이것은 적절한 방법처럼 보이지 않으며 더 나아가이 서비스에서 null로 암호를 얻습니다. – Jerry

관련 문제