2016-09-21 3 views
1

저는 ASP.NET Identity을 찾고 있습니다. 요즘은 ASP.NET 응용 프로그램의 사용자 인증에 가장 적합한 솔루션 인 것으로 보입니다. (모든 ASP.NET 멤버쉽 항목을 과거).ASP.NET ID - 익명 사용자에 대한 정보 유지

익명 사용자에 대한 정보를 유지 관리 할 수있는 솔루션을 찾고 있습니다. 사용자가 인증되지 않은 경우에도 사용자가 인증 된 경우 저장할 수있는 대부분의 프로필 데이터를 수집하고 저장할 수 있습니다.

사용자가 익명하더라도, 같은 데이터를 저장하는 데 의미가

: (그는 자신의 창조자로 편집 할 수 있도록) 그 사이트에 쓰여

  • 쇼핑 카트
  • 의견
  • 다양한 사이트 환경 설정 (선호 언어 및 기타 여러 설정)

사용자가 등록하면이 데이터 중 일부를 새로운 사용자 pr으로 복사 할 수 있습니다. 어떤 데이터인지에 따라 ofile (또는 자동으로 복사).

ASP.NET ID로이 시나리오를 달성 할 수 있습니까? ASP.NET Identity에서 사용자가 익명 인 경우 사용자 프로필 데이터를 가질 수없는 것으로 보입니다.

동일한 테이블을 사용하여 인증 된 사용자와 같은 모든 정보를 저장하려면 사이트를 방문하는 모든 신규 방문자에 대해 시스템에서 새 사용자를 만들어야하고 사용자 데이터.

그런 다음 쿠키 식별자를 사용자에게 전달해야만 데이터를 사용자에게 연결할 수 있습니다. 실제 사용자에게는 보이지 않지만 인증 양식으로 볼 수 있습니다. 그런 식으로 게스트 사용자는 익명의 사람 일지라도 시스템의 인증 된 사용자를 실제로 대변 할 수 있습니다 (어쩌면 그는 특별한 역할을 할 수 있을까요?).

이 접근 방식에 대해 어떻게 생각하십니까? ASP.NET Identity가이 문제를 해결할 수있는 방법이 있습니까?

나는이 두 가지 관련 스택 오버플로 질문을 찾았지만, 나는 그들에게 내 대답을 발견하지 않았습니다 :


편집 :

I 이 문제의 일부를 해결하는 것으로 보이는 익명 식별이라는 메커니즘이 ASP.NET에서 발견되었습니다.

https://msdn.microsoft.com/en-us/library/91ka2e6a(v=vs.85).aspx

어쩌면 그것은 어떻게 든 ASP.NET 정체성과 통합 될 수 있는가?

Edit2가 : 코멘트에 언급 한 바와 같이익명 식별에 대한 문서는 오래된 것 같다 그리고 마이크로 소프트가 미래에이 정도에 집중되지 않는다는 것을 확실히 가능성이 있습니다. ASP.NET ID 또는 다른 OWIN 기반 솔루션과 함께 작동하는 솔루션을 사용하는 것이 좋습니다.

+0

신원이 확인되지 않아 걱정 스럽습니다. 여기에 내장 된 기능이 없습니다. 당신은 대부분의 물건을 직접 만들어야합니다. 그러나 OWIN 쿠키 미들웨어 중 일부를 사용하여 클레임 및 쿠키 작업을 수행 할 수 있습니다. – trailmax

+1

신원이없는 OWIN을 사용하여 사용자 인증 쿠키를 작성했습니다. 관련 부분은 다음에서 볼 수 있습니다. https://github.com/trailmax/OwinADAuthentication/blob/master/ActiveDirectoryAuthentication/Models/AdAuthenticationService.cs#L82 – trailmax

+0

@trailmax : 응답 해 주셔서 감사합니다. 필자는 ASP.NET Identity의 기능 대부분을 좋아하고이를 사용할 계획이므로 이러한 게스트 사용자를 ASP.NET Identity 프레임 워크에 통합하는 방법을 자세히 조사하고 있습니다. –

답변

0

Asp.Net Identity에는 그런 것이 없으며 브라우저에서 힙 IP 또는 쿠키를 통해서도 익명 사용자를 식별 할 수 없으므로 사용자에게 매우 최소 정보 또는 FB 또는 Twitter를 통해 등록하도록 요청할 수 있습니다 가능한 한 짧게 등록 절차를 수행하고 나중에 자신의 프로파일을 완성 할 수 있습니다. 이렇게하면 데이터가 실제 프로파일에 링크되어 있는지 확인할 수 있습니다.

+0

보안 관점에서 볼 때 별 관심은 없지만 쿠키가 도난 당했는지 여부는 중요하지 않습니다. 모든 중요한 작업에 대해 적절한 인증이 필요할 것입니다. 또한 사용자가 장바구니에 항목을 추가하기 전에 Facebook을 통해 로그인하도록 요청하면 변환에 엄청난 피해를줍니다. 또한 쿠키를 통해 사용자를 식별하는 것이 안전하지 않다고 생각하는 이유는 무엇입니까? ASP.NET ID도 쿠키를 사용하지 않습니까? –

+0

asp.net은 쿠키를 사용하여 사용자 세션을 유지하고 요청할 때마다 로그인을 요구하지는 않지만 사용자를 인증하지는 않습니다. –

+0

하지만 세션 쿠키를 훔쳐서 시스템 및 사용자의 신원 정보에 액세스 할 수 있습니다. 내 요점은 쿠키를 사용하여 익명 사용자를 식별하는 것은 쿠키를 사용하여 사용자의 세션을 식별하는 것만큼이나 안전 할 수 있다는 것입니다. –

0

ASP.NET 프로필 속성은 응용 프로그램이 사용자 별 정보를 추적하고 영구 저장하도록합니다. 예를 들어 사용자는 우편 번호 나 선호하는 색 구성표를 지정할 수 있으며 응용 프로그램은 해당 정보를 저장하고 응용 프로그램의 어느 곳에서나 검색 할 수 있습니다. ASP.NET은 사용자가 익명이거나 로그온 한 현재 사용자를 사용자 계정 용으로 저장된 개인 정보와 자동으로 일치시킵니다.

구성 프로필 속성

당신은 프로필 속성을 사용하려면 응용 프로그램을 구성하여 시작합니다. 그런 다음 각 사용자에 대해 추적하려는 첫 번째 속성을 정의합니다. 이 속성의 이름은 PostalCode이며 익명 사용자와 로그온 사용자 모두에 대해 추적됩니다.

출처 : https://msdn.microsoft.com/en-us/library/taab950e.aspx

+0

이것은 (더 최신 버전의 .NET 용) 더 이상 업데이트되지 않는 것으로 보이며 ASP.NET ID의 아무 곳에서도 언급되지 않습니다. 이 모든 것이 ASP.NET Identity가 대체해야 할 이전 구성원 관련 라이브러리의 일부라고 가정했습니다. 마이크로 소프트가 OWIN 인프라의 기능을 지원하는 데에만 중점을 둘 것으로 보이므로 새로운 개발을 위해 기존 라이브러리에서 벗어나려고합니다 ... –

관련 문제