누구나 C#에서 사용자 지정 Windows 자격 증명 공급자를 만들었습니까? Windows SDK에있는 샘플은 모두 C++로되어 있습니다. 내가 한 초기 검색은 가능할 수도 있지만 확인한 사람을 찾지 못했음을 나타냅니다.C#을 사용하는 Windows 자격 증명 공급자
답변
+1의 경우 pgina입니다. Cody가 말한 것처럼 Credential Provider를 만드는 데 사용할 수있는 관리되는 API는 없으므로 pInvoke 경로로 이동하려면 자격 증명 제공자를 파악하는 것보다 pInvoke 문제를 해결하는 데 더 많은 시간이 소요됩니다.
여기서 pGina는 멋진 플러그인 아키텍처와 플러그인이 관리 코드로 작성되었다는 것을 도울 수 있습니다. here 차트를 참조하십시오. pGina는 LogonUI (네이티브 코드)와의 통신을 처리하지만 실제 인증을 수행하기 위해 플러그인 (관리)에 의존합니다. 이는 실제로 원하는 것을 제어합니다. 그렇지 않으면 자신의 자격 증명 공급자가 필요하지 않습니다.
pGina를 확인하십시오. 나는 그걸로 놀고 있었고 그것은 내 Windows 8에서 제대로 작동하는 것 같습니다, 그래서 그것도 전에 모든 Windows 버전에서 잘 작동합니다. 그래도 꽤 초기 단계에 머물러 있으며 프로젝트의 네이티브 절반을 탐구하지 않고도 사용자 지정 UI를 만들 수있는 방법을 볼 수 없습니다. 희망이 도움이!
[편집] 코디 그레이의 의견을 다시 읽으십시오. 명확히하기 위해, pGina는 실제로 당신을 위해 작성된 원시 코드입니다. 하지만 네, 아마도 C++로 시작하는 것이 더 많은 컨트롤을 가지고있을 것입니다. 그렇지만 그것이 어떻게 제공되는지에 관해서 너무 많은 컨트롤이 필요 없다면 pGina가 갈 방법입니다.
Windows Vista 이상의 새로운 CredentialProvider 모델은 COM을 기반으로합니다. 즉, 올바른 COM 인터페이스를 구현할 수 있어야합니다.
이전 GINA 모듈은 COM 인터페이스 대신 DLL 진입 점과 함수 포인터를 사용했기 때문에이를 기반으로 이전 GINA 모델보다 쉽게 빌드해야합니다.
는 닷넷의 능력으로 간 운영 COM과 함께, 그것은 쉽게해야 감안할 때 :
- 가 ICredentialProvider 인터페이스의 C#을 정의를 구축하고 올바른 COM 추가 올바른 GUIDS와 속성을
- Windows에서 새 CredentialProvider을 등록 할 수있는 올바른 레지스트리 키를 추가 RegAsm을 함께
- 을 새로운 어셈블리를 등록 자격 증명 공급자 상기 ICredenitalProvider를 구현하고 대해 ComVisible (참)로 표시되어 클래스
- 구축 (당신은 모든 걸 할 경우 마이크로 소프트 \ 윈도우 \ CurrentVersion을 \ 인증 \ 자격 증명 공급자 \ 소프트웨어)
, 당신은 C#으로 작성된 작업 자격 증명 공급자를해야합니다
- 1. 자격 증명 공급자 비활성화 영역
- 2. 서버 2008 R2의 자격 증명 공급자
- 3. 자격 증명 공급자 및 명명 된 파이프
- 4. vC++을 사용하여 자격 증명 공급자 작업
- 5. Windows 자격 증명 유효성 검사
- 6. Windows 시스템 로그인 자격 증명
- 7. 도메인이없는 WCF Windows 자격 증명?
- 8. Windows 시스템 로그인 자격 증명
- 9. 자격 증명 공급자는
- 10. Windows 서비스를 사용하여 Windows 자격 증명 무시
- 11. 자격 증명
- 12. 자격 증명 배열
- 13. IIS 사용자 자격 증명
- 14. MSSQL 연결 문자열 - 다른 자격 증명 집합을 사용하는 Windows 인증
- 15. 도메인 자격 증명
- 16. Vista/Windows 7의 자격 증명 관리자
- 17. SAML을 사용하여 ADFS에 Windows 자격 증명 추가
- 18. WCF 클라이언트의 Windows 자격 증명 전달
- 19. C# Windows 서비스 유효하지 않은 자격 증명
- 20. 사용자 자격 증명 얻기 Windows 인증
- 21. WCF에 자격 증명 전달 (Windows 또는 양식)
- 22. 자격 증명 질문
- 23. 제어 할 수없는 계정에 대한 OpenID 공급자 자격 증명 제공
- 24. BITS 자격 증명 문제
- 25. AWS SES의 자격 증명
- 26. WCF 자격 증명 변경
- 27. AWS를 사용하는 임시 자격 증명 IAM
- 28. ASIHTTPRequest에서 자격 증명 지우기
- 29. IAM 자격 증명
- 30. 추가 자격 증명
나는이 관리에서 작동하는지 모르겠어요 코드 또는 아닙니다. 왜 관리 코드에이 코드를 쓰길 원하지만 그 코드를 시도하기는 어렵지 않을지 질문합니다. 모든 Win32 함수에 대해 많은 P/Invoke 정의를 작성해야합니다. C++에 대한 지식에 따라보다 적절한 언어로 작성하는 것보다 시간을 낭비 할 수 있습니다. –