나는 TCP 서버와 통신하는 클라이언트가있다. app.config에 사용자 이름/암호를 저장합니다. 나는 사용자 이름/암호를 암호화하고 app.config가 표준 방법 (내가 어떻게하는지 압니다)에 따라 암호화 될 것입니다.Howto- 클라이언트에서 서버로 app.config의 암호화 된 사용자 이름/암호를 인증합니다.
저는 암호화 된 사용자/통과 및 인증을받는 공급자 서버 측이 필요할 것이라고 가정합니다. 서버는 표준 멤버십 공급자를 사용하는 asp.net 애플리케이션에 의해 구동됩니다. 서버가 Sql Server를 db로 사용하거나 Sqlite/Oracle과 비슷한 기능을 사용하는 경우입니다.
그래서 질문이 있습니다.
- 사용자 인증에 이상적인 서버 측 공급자는 무엇입니까?
- 사용자/이름과 암호를 암호화하는 데 허용되는 방법은 무엇입니까?
- 또는 서버에 암호화 된 사용자/암호를 사용하는 사용자 정의 passw 유효성 검사기가 필요합니까?
- 어떻게 든 서버 사용자/패스 공급자를 asp.net 멤버 자격 공급자에 연결할 수 있습니까?
이상적인 공급자의 경우 서버에 계정을 만들어야합니까?
상위 500 개 이상의 클라이언트가 있습니다.
대단히 감사합니다. Bob.
나는 OP가 특별히 App.config에 사용자 이름과 암호의 암호화 된 버전을 저장하는 방법을 묻는 것입니다, 그리고 그것을 사용하기 위해 검색하는 방법. –
이 인스턴스의 경우 클라이언트는 C# 어셈블리가되지만 나중에 linux/bsd/solaris의 원시 클라이언트가 될 수 있습니다. TCP는 ssl을 통해 tcp 서버로 통신합니다. 나를 참아주십시오. –
이것을 발견 : [소금에 절인 해시 암호 만들기] (http://www.dijksterhuis.org/creating-salted-hash-values-in-c/) 해싱의 중요성과 그 문제에 대해 염두에 두십시오. 그 질문의 두 번째 부분으로 우리를 데려다줍니다. –