Article View: pl.comp.lang.delphi
Article #346716Re: Delphi + Kerberos + SSO
From: ExM
Date: Tue, 28 Aug 2018 08:35
Date: Tue, 28 Aug 2018 08:35
67 lines
3708 bytes
3708 bytes
W dniu czwartek, 16 sierpnia 2018 16:02:57 UTC+2 użytkownik Sivy napisał: > Witam > > Mam aplikację, która muszę uwierzytelnić przy pomocy Kerberosa i SSO > (single sign on). > > Ktoś wie czy są do tego jakieś komponenty czy kod dzięki któremu bym > mógł to osiągnąć ? > > Za każdą wskazówkę będę wdzięczny. > > Delphi 2007 a po stronie serwera Windows serwer 2012R2. > Przyglądnij się tej funkcji (działa na każdym Delphi). W ten sposób możesz zweryfikować czy użytkownik został autoryzowany przez system. Reszta to tylko kwestia ustalenia w twojej aplikacji czy danego użytkownika akceptujesz. (Domena jest opcjonalna - bez niej nie ustalisz czy logowanie było lokalnym kontem czy domenowym) //--------------------------------------------------------------------------------------------------------------------+ //Funckja za pomocą API realizuje proces logowania sprawdzając czy podane dane zostały poprawnie zweryfikowane //Parametry wywołania: // [_login] - login użytkownika // [_password] - hasło użytkownika // [_domain] - domea użytkownika // [token] - wygenerowany przez system token autoryzacji // [msg] - zwrócony przez funkcję komunikat // //v1.0 z 24.11.2017 by ExM //--------------------------------------------------------------------------------------------------------------------+ function CheckUserPassword(_login, _password, _domain: string; var token:THandle; var msg:string): Boolean; var _error:integer; begin result:=false; msg:=''; if (_login='') then Begin msg:='NOLOGIN'; exit; end; if (_password='') then begin msg:='NOPASSWORD'; exit; end; result := LogonUser(PChar(_login), PChar(_domain), PChar(_password), LOGON32_LOGON_INTERACTIVE, // first check interactive LOGON32_PROVIDER_DEFAULT, token); if not result then begin result := LogonUser(PChar(_login), PChar(_domain), PChar(_password), LOGON32_LOGON_NETWORK, // then check against network LOGON32_PROVIDER_DEFAULT, token); end; if not result then begin _error:=GetLastError; msg:=SysErrorMessage(_error); end; end;
Technical Details
Message-ID:
<319f6b69-4b9b-40ca-9033-3cfc2c227274@googlegroups.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!feeder.erje.net!2.eu.feeder.erje.net!feeds.phibee-telecom.net!newsfeed.xs4all.nl!newsfeed8.news.xs4all.nl!85.12.16.68.MISMATCH!peer01.ams1!peer.ams1.xlned.com!news.xlned.com!peer01.am4!peer.am4.highwinds-media.com!peer03.iad!feed-me.highwinds-media.com!news.highwinds-media.com!g24-v6no391136iti.0!news-out.google.com!c63-v6ni422ith.0!nntp.google.com!g24-v6no391135iti.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mailReferences:
<pl406g$dk5$1@node1.news.atman.pl>Show Full Headers
Complete Article Headers
X-Received: by 2002:a24:ccc1:: with SMTP id x184-v6mr343839itf.43.1535445336380; Tue, 28 Aug 2018 01:35:36 -0700 (PDT) X-Received: by 2002:aca:de07:: with SMTP id v7-v6mr10777oig.5.1535445336079; Tue, 28 Aug 2018 01:35:36 -0700 (PDT) Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!feeder.erje.net!2.eu.feeder.erje.net!feeds.phibee-telecom.net!newsfeed.xs4all.nl!newsfeed8.news.xs4all.nl!85.12.16.68.MISMATCH!peer01.ams1!peer.ams1.xlned.com!news.xlned.com!peer01.am4!peer.am4.highwinds-media.com!peer03.iad!feed-me.highwinds-media.com!news.highwinds-media.com!g24-v6no391136iti.0!news-out.google.com!c63-v6ni422ith.0!nntp.google.com!g24-v6no391135iti.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: pl.comp.lang.delphi Date: Tue, 28 Aug 2018 01:35:35 -0700 (PDT) In-Reply-To: <pl406g$dk5$1@node1.news.atman.pl> Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=37.47.116.102; posting-account=doVJ9goAAADBJ8SWJkb9r0xXWw28WhQg NNTP-Posting-Host: 37.47.116.102 References: <pl406g$dk5$1@node1.news.atman.pl> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <319f6b69-4b9b-40ca-9033-3cfc2c227274@googlegroups.com> Subject: Re: Delphi + Kerberos + SSO From: ExM <grupywyt-nijto@mv.net.pl> Injection-Date: Tue, 28 Aug 2018 08:35:36 +0000 X-Received-Bytes: 3699 X-Received-Body-CRC: 4259486426 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit