02-02-2018, Saat: 21:57
(02-02-2018, Saat: 20:21)csunguray Adlı Kullanıcıdan Alıntı: Delphi ile https://kpsv2.nvi.gov.tr/Services/RoutingService.svc adresindeki (wsdl adresi: https://kpsv2.nvi.gov.tr/Services/Wsdl.a...ikNoServis) web servisine bağlanabilen var mıdır? Biliyorsunuz bu servis sadece tanımlı IP'lere açık bir servis. O yüzden her yerden deneme yapmak mümkün değil. İnternette yaptığım araştırmalarda C-Sharp, Java ve hatta PHP içerisinden hiç bir özel ayar yapmadan doğrudan bağlanılıyor. Ama Delphi içerisinden ne yaptıysam bağlanamadım.
Aldığım hata mesajı gönderdiğim XML nin uygun yapıda olmadığını söyleyen bir mesajdı. XML'ye WSSE ile security header da uyguluyorum. Bu konuda tecrübesi olan arkdaşlar tecrübelerini paylaşırsa sevinirim.
WSDL'nin import edilmiş hali ektedir.
Alıntı:Kimlik Paylaşımı Sistemi web servislerinden faydalanabilmek için, bağlantı için kullanılan sistemin
XML Web Servislerini çağırabilme (SOAP 1.2)
WS-Security 1.1, WS-Trust 1.3 ve WS-SecurityPolicy 1.2 web servis güvenliği
standartlarını desteklemesi gerekmektedir.
KPS’de tek noktadan kimlik doğrulama (Single Sign On – SSO) yöntemi uygulanmaktadır. Web servis kullanıcıları doğrudan KPS üzerinden değil, ayrı bir güvenlik anahtarı servisinden (Security Token Service – STS) kullanıcı adı ve parolaları ile anahtar alarak, geçerli olduğu süre zarfında aynı anahtar ile KPS’ye çağrıda bulunabileceklerdir.
STS, WS-Security - UsernameToken güvenlik yöntemini kullanmaktadır ve transport seviyesinde SSL (secure sockets layer) ile korunmaktadır. KPS V2 ise WS-Security 1.1, WS-Trust 1.3 ve WS-SecurityPolicy 1.2 güvenlik yöntemlerini uygulamaktadır. KPS V2 Servisleri transport serviyesinde SSL ile, SOAP serviyesinde SAML V1.1 güvenlik anahtarı ile korunmaktadır.
Kullanıcılar kendilerine verilen kullanıcı adı ve parolaları ile STS’nin sunduğu güvenlik anahtarı sağlayıcı servise istekte bulunurlar. STS servis cevabı olarak SAML V1.1 türünde bir güvenlik anahtarı döner. Kullanıcılar bu güvenlik anahtarı ile KPS servislerine istekte bulunabilirler.
Bir zamanlar uğraşmış ve Delphi 7 ile kps v1 ile bağlanmıştım. Daha sonra v2 ye geçilince güvenlik standartları değişti ve Delphi 7 bu standartları karşılamadığı için devam etmedim. Şu an durum nedir bilmiyorum ama
Teknik Bilgi Dokümanı nı incelemenizi tavsiye ederim.
Daha önce Delphi 7 ile sorun yaşadığımda c# ile yazılmış bir dll kullanarak projeme devam etmiştim. Ancak v2 ile uyumlu olmayan ve benim yazmadığım dll de şu anda kullanılır durumda değil.
İlk fırsatta yeni versiyonlarla durum nedir denemeye çalışacağım.
Umarım faydalı olmuştur

