2012-02-12 3 views
2

테이블이 Users 인 WPF 응용 프로그램과 SQL Server 데이터베이스가 있습니다. 모든 사용자는 Users 테이블의 해시 된 암호와 역할을 포함하는 자체 행을가집니다.SQL Server 데이터베이스에 대한 사용자 지정 인증

내 응용 프로그램에서 인증을 받고 역할을 포함하여 일종의 자격 증명을 유지해야합니다. 그 역할을 토대로, 그들은 그들이보아야 만하는 것을 볼 것입니다.

달성 방법을 알려주시겠습니까? 이러한 자격 증명을 유지하고 사용자의 역할에 따라 내 애플리케이션의 일부를 숨기는 가장 좋은 방법은 무엇입니까?


좋아 어떤 도움

감사합니다, JiKra, 나는 생각과 방법에 대한 싱글 톤을 사용했다? 사용자 인증, 데이터베이스에서 자신의 역할을 잡아, 싱글 톤을 인스턴스, 자신의 자격 증명을 설정하고 내 애플 리케이션에서 그들을 사용합니다. 맞습니까? 그렇게하는 것이 가장 쉬운 방법입니까? JiKra

+0

WPF 클라이언트가 데이터베이스 또는 데이터베이스와 통신하는 웹 서버/서비스와 WPF 클라이언트가 대화하는 3 계층 응용 프로그램과 직접 대화하는 두 계층 응용 프로그램입니까? –

+0

[ASP.NET 멤버쉽 및 역할 하위 시스템] (http://www.4guysfromrolla.com/articles/120705-1.aspx)의 뛰어난 멀티 파트 시리즈를 살펴보십시오. WPF에서 온 경우에도 문제없이 사용할 수 있습니다. 이미 사용 가능하고 사용 가능하며 작동하며 그 가치가 수천 번에 걸쳐 입증되었습니다. –

+0

Jared : 데이터 집합을 사용하여 데이터베이스와 직접 대화합니다. – JiKra

답변

1

"기능 모델"은 MembershipProvider/RoleProvider API를 기반으로 할 수 있습니다. 토드 미란다하여 튜토리얼 비디오가 있습니다 : 그것은 응용 프로그램의 다른 부분에 사용할 수 있도록 정보를 저장해야하는 위치

http://windowsclient.net/learn/video.aspx?v=293710

은 무엇 튜토리얼이 부족 것은. 대답은 간단합니다. 상태 저장 응용 프로그램이 있으므로 클래스의 공유 (정적) 리소스에 정보를 저장할 수 있습니다.

잠재적 인 보안 위험에 대해 알고 계십시오. 귀하의 질문에 덧글을 추가했습니다.

+0

확인해 보겠습니다. 일부 정적 클래스 또는 싱글 톤은 내가 해결책이라고 생각한 것입니다 ... – JiKra

+0

@JiKra : 귀하의 의견과 관련하여 귀하의 응용 프로그램이 통합 보안에 의존한다면 추가 암호를 저장해야합니까? –

관련 문제