나는 Azure 모바일 백엔드가 페이스 북과 구글 인증을위한 쉬운 인증으로 설정되어 있으며 예상대로 작동합니다.Azure App 서비스 Easy Auth
사용자가 지원되는 모든 제공 업체에 로그인 할 때마다 클라이언트로부터 추가 전화를하지 않고 새 사용자인지 여부 (데이터베이스에없는 전자 메일)를 확인할 수 있기를 원합니다. 이것이 가능한가?
나는 Azure 모바일 백엔드가 페이스 북과 구글 인증을위한 쉬운 인증으로 설정되어 있으며 예상대로 작동합니다.Azure App 서비스 Easy Auth
사용자가 지원되는 모든 제공 업체에 로그인 할 때마다 클라이언트로부터 추가 전화를하지 않고 새 사용자인지 여부 (데이터베이스에없는 전자 메일)를 확인할 수 있기를 원합니다. 이것이 가능한가?
사용자가 지원되는 모든 제공 업체에 로그인 할 때마다 클라이언트에서 추가 전화를하지 않고 새 사용자인지 여부 (데이터베이스에없는 전자 메일)를 확인할 수 있어야합니다. 이것이 가능한가?
알고있는 한, 새로운 사용자인지 직접 확인할 수 없습니다.
서버 흐름이나 클라이언트 흐름을 사용하든 상관없이 쉬운 인증은 클라이언트가 모바일 백엔드 리소스에 액세스 할 수 있도록 액세스 토큰을 반환하기 만하면 사용자가 새 것이거나 오래된 것인지 확인하지 않습니다.
이 요구 사항을 충족 시키려면 자신 만의 논리를 작성해야합니다.
사용자가 성공적으로 로그인 한 후에 코드를 작성할 수 있습니다.
예 : 페이스 북 로그인.
로그인이 성공적으로 완료되면 GetAppServiceIdentityAsync 확장 메소드를 호출하여 페이스 북 그래프 API에 대한 요청을하는 데 필요한 액세스 토큰을 포함하는 로그인 자격 증명을 얻을 수 있습니다.
// Get the credentials for the logged-in user.
var credentials =
await this.User
.GetAppServiceIdentityAsync<FacebookCredentials>(this.Request);
if (credentials.Provider == "Facebook")
{
// Create a query string with the Facebook access token.
var fbRequestUrl = "https://graph.facebook.com/me/feed?access_token="
+ credentials.AccessToken;
// Create an HttpClient request.
var client = new System.Net.Http.HttpClient();
// Request the current user info from Facebook.
var resp = await client.GetAsync(fbRequestUrl);
resp.EnsureSuccessStatusCode();
// Do something here with the Facebook user information.
var fbInfo = await resp.Content.ReadAsStringAsync();
}
그런 다음 사용자 정보에 따라 데이터베이스를 확인할 수 있습니다.
서버 측에서 사용자 정보를 얻는 방법에 대한 자세한 내용은 How to: Retrieve authenticated user information을 참조하십시오.
도움 주셔서 감사합니다. 나는 당신의 지시를 통해 나의 목표를 성취하려고 노력할 것이며, 성공할 때 여기에 올릴 것입니다. – LuizFranco