소셜 네트워크 프로필을 통한 승인. 소셜 네트워크를 사용하여 로그인하세요. 소셜 로그인은 어떻게 작동하나요?

꽤 오랫동안 많은 사이트에서 표준 인증과 함께 소셜 네트워크 및 웹 서비스를 통한 인증을 제공했습니다. 당신은 선택할 수 있습니다:

  1. 이메일/비밀번호/보안문자를 입력하고 이메일로 활성화하는 비교적 긴 등록 과정을 거치세요.
  2. 계정이 있는 소셜 네트워크 아이콘을 클릭하고 액세스를 확인하세요.
표준 등록 메커니즘을 완전히 포기하는 것은 어떨까요? 그건 그렇고, 이것은 정확히 Microsoft의 on(X) 웹 서비스에서 구현되는 접근 방식입니다. Facebook을 통해서만 인증됩니다.

그러나 언뜻보기에 모든 것이 장밋빛은 아닙니다. 이메일/비밀번호 조합을 사용한 등록을 완전히 포기할 것이라는 사실을 고려하여 사회적 인증의 긍정적인 측면과 부정적인 측면을 강조해 보겠습니다.

장점:

  • 사이트에서 빠른 승인.
  • 인증 공급자의 사용자 데이터.
  • 비밀번호가 없습니다.
  • 계정 활성화가 부족합니다.
  • 유일한 양식은 승인 양식입니다.
결점:
  • 일부 인증 제공업체는 이메일을 제공하지 않습니다.
  • 제공된 사용자 데이터의 다양한 형식.
  • 청중 선호도.
  • 승인을 위해 어떤 서비스를 사용했는지 잊어버릴 수도 있습니다.

이 접근법의 장점은 분명합니다. 우리는 단점과 해결 방법에 더 관심이 있습니다.

결함

일부 인증 제공업체는 이메일을 제공하지 않습니다.
예, 사용자에 대해 알아야 할 가장 중요한 정보는 일부 제공업체에서는 제공되지 않을 수도 있습니다. 특히 VKontakte와 Odnoklassniki는 공개 API에서 이를 제공하지 않습니다. Facebook과 Google은 이메일 주소에 더욱 충실하며 특정 권한을 통해 이 정보를 귀하에게 성공적으로 반환합니다.
해결책:
  1. 이 문제에 대한 인기 있는 해결책 중 하나는 인증 후 사용자에게 간단히 물어보는 것입니다. 이렇게 하면 추가 대화가 추가되며 활성화 절차를 거쳐야 합니다.
  2. 대상 고객에 따라 이메일을 제공하지 않는 인증 제공자를 거부하세요.
  3. 이메일 주소를 사용하지 마십시오. 다시 말하지만, 거의 유일한 사용자 피드백 수단을 쉽게 버릴 수 있는 곳은 없습니다. 소셜이라고 해보자 VKontakte 네트워크는 등록을 위해 휴대폰 번호를 사용합니다. 여기에서는 사용자가 소셜 네트워크에서 자신의 계정을 삭제한 경우 사이트에 대한 액세스를 어떻게 복원할지 생각해 볼 필요가 있습니다.
제공된 사용자 데이터의 다양한 형식
때로는 소셜 미디어 ID보다 사용자에 대해 좀 더 자세히 알아야 할 때가 있습니다. 네트워크. 이러한 데이터에는 이름, 성, 별명, 성별, 아바타, 생년월일이 포함될 수 있습니다. OAuth 및 OpenID 프로토콜은 사용자에 대한 데이터를 얻도록 설계되지 않았기 때문에 각 특정 서비스의 API를 사용해야 하며 반환되는 데이터는 모든 곳에서 다릅니다. 특히 인증 제공업체인 Google, Vkontakte, Facebook 및 Odnoklassniki가 위의 모든 데이터를 제공합니다. 남은 것은 처리하는 것뿐입니다.
해결 방법: 사용자에 대한 추가 데이터가 정말로 필요한 경우 인증 서비스에 요청하세요. 더욱 구체적인 데이터가 필요한 경우 승인 후 사용자가 직접 입력하도록 요청하세요.
청중 선호도
이제 우리는 가장 문제가 되는 질문에 도달했습니다. 표준 등록을 거부하면 대상 고객이 낙담하지 않을까요? 이 문제에 대한 내 의견은 다음과 같습니다. 소셜 서비스를 통해 로그인하고 싶지 않지만 서비스에 대한 대안이 없더라도 결국 포기할 것입니다. 저는 개인적으로 이 알고리즘을 고수합니다. 나중에 특정 서비스를 사용할 계획이라면 반드시 로그인과 비밀번호를 사용하여 해당 서비스에 등록합니다. 사이트에 그런 기회가 없으면 소셜 미디어를 통해 로그인하겠습니다. 네트워크.
사용자가 소셜 네트워크를 사용하지 않더라도 gmail, mail.ru 또는 기타 서비스에 대한 이메일 계정이 있어야 합니다. 따라서 사용자가 제공된 인증 서비스를 사용하는 단일 계정을 갖고 있지 않은 경우는 거의 없습니다.
승인에 사용한 서비스를 잊어버릴 수 있습니다.
귀하의 리소스에서 9000개가 넘는 공급자를 통해 로그인할 수 있고 사용자가 이러한 공급자에 최소 2개의 계정을 갖고 있는 경우 사이트에 로그인하는 데 사용한 특정 방법을 잊어버릴 수도 있습니다. 오류가 발생하면 데이터베이스에 새로운 등록에 대한 쓸모없는 기록이 생성됩니다.
해결 방법: 인증 서비스를 쿠키에 기록하고 로그인 페이지에서 강조 표시합니다. 이는 일종의 보안 위험을 초래할 수 있지만 이를 심각하게 활용할 수 있는 방법이 즉시 떠오르지는 않습니다.

결론

정기 등록을 포기한다는 생각은 매우 유혹적이지만 설명된 문제를 제거할 수 있는지 여부에 따라 다릅니다.

추신 uLogin에서 일부 통계를 읽을 수 있습니다

소셜 네트워크 계정 사용 VKontakte, Odnoklassniki, Mail.ru, Facebook, Twitter 또는 Google에서는 등록이나 비밀번호 입력 없이 Yandex에 로그인할 수 있습니다. 이렇게 하려면 양식에서 소셜 네트워크 로고를 클릭하세요.

Facebook을 통한 인증의 예

로고를 클릭하면 Yandex에 대한 추가 인증 프로세스가 진행되는 새 창이 열립니다. 아래 단계를 처음으로 수행한 후 이 로고를 한 번 클릭하면 Yandex에 로그인할 수 있습니다.


사용한 Facebook 계정은 Yandex.Passport 페이지에 표시되고 소셜 네트워크에서 받은 이름은 Yandex 서비스에 표시됩니다.

질문과 답변

Yandex에서 사용자 이름과 비밀번호를 만드는 이유는 무엇입니까?

예를 들어 메일이나 디스크를 사용하려면 일부 서비스에 액세스하려면 Yandex 로그인 및 비밀번호가 필요할 수 있습니다.

소셜 네트워크 비밀번호를 잊어버려서 Yandex 서비스에 로그인할 수 없으면 어떻게 해야 합니까?

Yandex 지원 직원에게 로그인을 알리는 방법

Yandex 지원 직원이 문제를 해결하기 위해 로그인이 필요하고 아직 로그인을 만들지 않은 경우 페이지에서 번호를 복사하면 됩니다.



소셜 네트워크를 통한 승인은 안전한가요?

또한 언제든지 Yandex가 귀하의 프로필에 액세스하는 것을 차단할 수 있습니다. 페이지에서 프로필을 삭제하기만 하면 됩니다.

일부 사용자는 아직 등록하지 않고 소셜 네트워크를 발명한 사람이 없다는 사실을 후회합니다. 이러한 프로젝트에는 많은 장점이 있지만 단점도 많습니다. 그리고 가장 중요한 것은 누구도 자신의 페이지를 유지할 수 없다는 것입니다. 그렇기 때문에 누구도 생성하지 않지만, 필요한 경우 등록하지 않고도 사용할 수 있습니다.

유사한 네트워크를 사용할 수 있습니다. 물론 기능은 제한되지만 사람을 찾고 온라인 상태인지 확인하거나 비디오를 보는 것은 쉽습니다. 여기에는 프로그램이나 브라우저 확장이 필요하지 않으며 모든 사람에게 공개 액세스가 제공됩니다.

등록하지 않고 VKontakte 또는 Odnoklassniki에 로그인하는 방법은 무엇입니까?

소셜로 전환하는 주요 작업이라면. 등록하지 않은 네트워크 - 이것은 사람을 검색하는 것이므로 Yandex의 특별 서비스를 사용하는 것이 훨씬 쉽습니다. yandex.ru/people 링크를 따라가면 사람에 대한 특별 검색으로 이동됩니다. 목록을 얻으려면 이름과 성을 입력하세요.

보다 정확한 검색을 위해 추가 데이터를 입력하고 특정 소셜 네트워크를 선택할 수 있습니다. Odnoklassniki 및 기타 많은 소셜 네트워크에서는 등록되지 않은 사용자에게 페이지가 숨겨지지 않으므로 프로필을 엽니다.

마찬가지로 다른 소셜 네트워크에서도 검색할 수 있습니다. 네트워크. VKontakte를 사용할 때 Yandex.People로 전환할 필요가 없습니다. 그곳에서 사용자 검색은 모든 사람에게 열려 있습니다. 주소 표시줄에 vk.com/search를 입력하면 필요한 페이지가 열립니다.

메인 라인에서는 이름과 성을 지정할 수 있으며 측면 패널을 통해 추가 데이터를 입력할 수 있습니다.

어떤 사람들은 공개적으로 접근할 수 없도록 숨겨진 페이지를 가지고 있지만 대부분은 공개되어 있습니다. 따라서 사진, 비디오, 담벼락 게시물, 상태 등을 쉽게 볼 수 있습니다.

등록하지 않은 Odnoklassniki

이 사이트로 이동하면 메인 페이지에서 인기 있는 게시물과 비디오를 볼 수 있습니다:

회원가입 없이도 어느 커뮤니티에나 접속하여 게시물을 보실 수 있습니다. 댓글을 쓰거나 그룹에 가입하려고 하면 로그인 페이지로 이동하게 됩니다.

제한된 기능에도 불구하고 소셜 네트워크를 방문하면 프로필과 거의 모든 콘텐츠를 계속 볼 수 있습니다. 이것이 충분하지 않지만 프로필을 사용하고 싶지 않은 경우 가장 좋은 방법은 추가 페이지를 만드는 것입니다. 무료 전화번호가 없나요? Buyaccs.com에서 기성 계정을 구매하세요. 이 온라인 상점은 거의 모든 소셜 네트워크의 프로필을 판매합니다. 네트워크:

비용은 계정의 용량과 친구 수에 따라 다릅니다. 은행카드, 전자화폐, 휴대폰 잔액 이체(로보카사 경유) 등 어떤 수단으로든 결제할 수 있습니다. 약간의 돈을 지출하면 프로필을 얻을 수 있으며 등록 없이 소셜 네트워크를 사용할 수 있습니다.

VKontakte, Odnoklassniki, Facebook, Twitter와 같은 사이트는 다양한 목적으로 사용되지만 모두 원격 작업에 적합하다는 점을 잊지 말아야 합니다. 간단한 단계에 따라 이를 알아보고 사용하면 계정을 구입하거나 모바일 통신 비용을 지불할 수 있는 약간의 돈을 쉽게 얻을 수 있습니다.

이 매뉴얼에서는 다음 소셜 네트워크를 통해 인증을 설정하는 방법을 살펴보겠습니다.

나만의 사용자 인증 앱을 만들고 싶다면 아래 지침을 따르세요. 승인 권한을 요청할 때 기본값 대신 로고와 사이트 이름을 표시할 수 있습니다.

접촉 중

“신청서 작성” 버튼을 클릭하세요. VKontakte 계정 로그인 페이지가 열립니다:

애플리케이션 이름을 정하고 "만들기" 버튼을 클릭하세요. 새 페이지에서 애플리케이션에 대한 자세한 정보를 제공하세요. 사용자가 등록(권한 요청)할 때 표시됩니다.

변경 사항을 저장한 후 애플리케이션 설정으로 이동하여 "애플리케이션 ID"와 "보안 키"를 복사하세요.

사이트 제어판에서 복사한 값을 지정하고 "저장" 버튼을 클릭합니다.

이제 VKontakte 웹사이트의 애플리케이션 설정으로 돌아가서 데이터를 입력합니다.

  • "개방형 API" - 활성화됨;
  • "사이트 주소" 및 "기본 도메인" - 연결된 도메인입니다.

응용프로그램을 사용할 준비가 되었습니다. VKontakte 소셜 네트워크를 사용하여 로그인하고 애플리케이션에 지정된 데이터가 어떻게 표시되는지 확인하십시오.

페이스북

"애플리케이션 만들기" 버튼을 클릭하고 열리는 페이지에서 Facebook 소셜 네트워크의 개인 계정에 로그인하세요.

그런 다음 "등록" 버튼을 클릭하세요:

등록하려면 전화번호를 입력하여 계정을 확인해야 합니다.

신청서를 작성하고 '신청 ID 만들기' 버튼을 클릭하세요.

"애플리케이션 ID"와 "애플리케이션 비밀번호"를 복사하세요. 사이트 제어판의 "클라이언트 ID" 및 "클라이언트 비밀" 필드에 각각 지정해야 합니다.

제어판에서 "리디렉션 URI"를 복사합니다.

이제 Facebook 개발자 웹사이트의 왼쪽 메뉴에서 "설정"을 선택하고 열리는 페이지에서 "고급" 탭으로 이동하세요.

페이지에서 "유효한 OAuth 리디렉션 URL"을 찾아 이전에 얻은 URL을 해당 필드에 붙여넣습니다.

얀덱스

"애플리케이션 만들기" 버튼을 클릭하고 열리는 페이지에서 Yandex 개인 계정에 로그인하세요. 승인 후 새 신청서를 작성하세요.

애플리케이션에 대해 다음 권한을 설정합니다.

  • 생년월일에 대한 접근
  • 이메일 주소에 대한 접근
  • 로그인, 성과 이름, 성별에 대한 액세스입니다.

사이트 제어판에서 "콜백 URI"를 복사하고 애플리케이션의 "콜백 URL" 필드에 지정한 다음 "저장" 버튼을 클릭합니다.

애플리케이션 ID와 비밀번호를 복사하세요.

사이트 제어판에 다음 정보를 입력하십시오.

응용프로그램을 사용할 준비가 되었습니다.

Google+

'애플리케이션 만들기' 버튼을 클릭하고 열리는 페이지에서 Google+ 소셜 네트워크의 개인 계정에 로그인하세요.

열리는 페이지에서 'Google+ API'를 선택합니다.

API를 활성화하려면 프로젝트를 생성해야 합니다. "프로젝트 만들기" 버튼을 클릭하세요:

프로젝트 양식을 작성하고 이용 약관에 동의한 후 "만들기" 버튼을 클릭하세요.

이제 API를 활성화할 수 있습니다:

그리고 애플리케이션 생성을 시작합니다.

애플리케이션 생성은 다음 네 단계로 구성됩니다.

1. 자격 증명 유형을 선택합니다.

2. OAuth 2.0 클라이언트 ID를 생성하고 도메인 주소와 허용된 리디렉션 URI(제어판에서 복사)를 지정합니다.

3. 애플리케이션에 대한 정보를 입력하세요. 등록하는 동안 사용자에게 표시됩니다.

4. "마침"을 클릭하세요:

이제 애플리케이션을 사용할 준비가 되었습니다. 그의 페이지로 가보자. 이렇게 하려면 왼쪽 열에서 "자격 증명"을 클릭하고 목록에서 애플리케이션을 선택하세요.

클라이언트 ID와 비밀번호를 복사하여 사이트 제어판에 표시하세요.

트위터

"애플리케이션 만들기" 버튼을 클릭하고 열리는 페이지에서 트위터 소셜 네트워크의 개인 계정에 로그인하세요. 신청서를 작성하려면 전화번호(

기술 구현에 대한 유용한 특정 정보가 있습니다.

그리고 간단히 말해서 ...

인증 및 등록에는 동일한 "사용자" 테이블이 사용됩니다. 일반적인 등록 및 인증과 함께 등록 중에(가장 간단한 형태로) 사용자의 이메일, 비밀번호 및 로그인이 "사용자" 테이블에 추가되고 인증 중에 입력된 로그인 및 비밀번호가 데이터베이스에 존재하는 것과 일치합니다. 체크하면 유사한 방식으로 사용되며, 소셜 네트워크를 통한 등록/인증에도 사용됩니다. 이 경우에만 등록을 위해 사용자에 대한 데이터 소스는 양식에 데이터를 입력하는 직접 사용자가 아니라 소셜 네트워크입니다. 그물. 이 경우 등록은 매우 투명합니다. 사용자에게 표시되지 않습니다. 체계는 대략 다음과 같습니다(Oauth 프로토콜의 특성 제외).


1) 사용자는 소셜 미디어를 통해 로그인을 선택합니다. 그물.
2) 이 소셜 네트워크의 인증 페이지에 대한 호출이 있습니다. 네트워크에 아직 로그인하지 않은 경우. 데이터를 입력한 후 이전에 승인을 받은 경우 데이터 사용 허가를 요청합니다.
3) 사람이 거절하면 그걸로 끝이에요. 동의하면 Oauth 설정에 지정된 사이트 페이지로 리디렉션됩니다.
4) 소셜 미디어의 모든 사용자 네트워크에는 요청할 수 있는 고유한 식별자가 있습니다. "users" 테이블의 경우 몇 가지 추가 필드(예: 다음과 같은)를 추가해야 합니다. auth_via (enum("native, "vk", "mailru", "...")) - 유형을 나타냅니다. 사용자 등록 및 social_id - 소셜 네트워크의 고유 식별자가 여기에 저장됩니다. 소셜 네트워크에서 이 사용자의 특정 데이터를 저장해야 하는 경우 이 데이터에 대한 추가 필드를 만들 수 있습니다.
5) 사용자가 자신의 데이터 사용 권한을 부여한 후에는 소셜 네트워크에 필요한 데이터를 요청해야 합니다. 네트워크 포함 및 소셜 미디어의 사용자 ID. 네트워크. 여기서 보이지 않는 등록 프로세스가 시작됩니다. 데이터베이스에 이 social_id를 가진 사용자가 있는지 확인하고, 없으면 소셜 네트워크의 사용자 데이터인 social_id를 삽입해야 합니다. 필요한 경우 데이터베이스에 네트워크를 추가합니다. 이제 사용자가 등록되었습니다.
사용자에 대한 데이터가 있는 경우 소셜 미디어에서 최신 데이터를 요청해야 합니다. 네트워크에 있는 내용과 비교하여 변경된 내용이 있으면 데이터베이스에서 업데이트하고, 그렇지 않은 경우에는 다음 단계로 넘어갑니다.
6) 사용자 데이터가 포함된 세션이 생성됩니다.

따라서 사이트 사용자의 "기본" 등록에 대한 기존 테이블은 상대적으로 소셜 미디어를 통한 등록/승인에 필요한 필드가 포함된 테이블로 결합됩니다. 네트워크. 서로 간섭하지 않습니다.

소셜 미디어에 등록된 사용자의 경우. 당연히 네트워크 비밀번호와 로그인이 없습니다. 승인을 위해 필요합니다. 때문에 사용자는 자신의 소셜 로그인과 비밀번호를 사용하여 로그인합니다. 네트워크인 경우 여기에 표시할 내용이 없습니다. 그러나 인증 중에 로그인 및 비밀번호 확인 요청에 조건을 추가할 수 있습니다.

"그리고 `auth_via`="네이티브""

소셜 네트워크에 등록된 사용자를 제외합니다. 네트워크.

보시다시피, 테이블의 각 사용자에 대해 내부(사이트 내) 기본 자동 증가 키가 생성됩니다. 따라서 소셜 미디어를 통해 등록된 사용자 간에 사이트 로직에는 차이가 없습니다. 네트워크와 웹사이트를 통해. 온라인 상점에 대해 이야기하고 주문을 사용자에게 연결하려면 단일 내부 ID를 사용할 수 있습니다.