message etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
message etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

30 Eylül 2023 Cumartesi

Sunucular Arasındaki İşlemler

 

   Bu tarif sunucu sınırlarını aşan işlemler üzerine yazılmış bir makaledir. Örneklerde bir kullanıcı profilini bir uygulamadan diğerine geçmeyi bekleyen tekliflerin özetlerini bir müşteri ilişkileri yönetimi uygulamasına içe aktarmayı veya halihazırda taslak sunucusunda bulunan üretim sunucusunda bir belge yayınlamayı içeriyor.  Bu tür kullanım durumları birden çok sunucuda durum manipülasyonuna  ihtiyaç duyar.

Sunucular arası işlemleri tasarlamak ve uygulamak için sunucuların birbirleriye işbirliği yapılmasına izin verin. Bu sunucuların veri formatları arka uç arayüzleri ve eşzamanlılık kontrolü üzerinde anlaşmaların yanı sıra bir veri deposunda veri yüklemeyi diğer sunucunun formatına uyacak şeklide normalleştirmeyi ve ardından depolamayı içerebilir. Sunuculardan birinin işlemi tetiklemek için istemcilere bir bağlantı sağlamasına izin verin. 

Sunucu sınırlarını aşan işlemlerle karşılaşıldığında endişelerin ayrılması kilit bir endişe olmalıdır. iki Web hizmetini düşünürsek biri kullanıcıların bağlantılarını yönetiyor. http://contacts.example1.org üzerinde çalışır ve e-posta, metin mesajları, sesli posta v.b gibi diğer yönetim mesajlaşmaları ise http://messaging.example2.org üzerinde çalışır.  Kullanım durumu, bir kullanıcının kişilerini mesajlaşma web hizmetine aktarılmasına izin vermektedir. Bunu desteklemek için kişiler web hizmetinin, kişileri mesajlaşma web hizmet aktarmak için bir bağlantı içerdiğini varsayın. Kişi listesini mesajlaşma web hizmetine aktarmak için bir bağlantıyla birlikte bir kullanıcının kişi listesinin temsili buradadır.

# Request
GET /user/smith/contacts HTTP/1.1 Host: contacts.example1.org
# Response
HTTP/1.1 200 OK
Content-Type: application/xml;charset=UTF-8
<contacts xmlns:atom="http://www.w3.org/2005/Atom">
<atom:link rel="self" href="http://contacts.example2.org/user/smith/contacts"/> <atom:link rel="http://contacts.example1.org/rels/export-to-messaging"
href="http://messaging.example2.org/user/smith/import; t=bcb9169866c69410be37f68210a6986c"
title="Export contacts into to messaging."/> <contact>
... </contact> ...
</contact>


Verileri bir sunucudan diğerine aktarmak için URI ile bağlantı kurun. http://contacts.example2.org/rels/export-to-messaging ilişki türüyle bağlantının anlamını anlayan bir istemci, dışa aktarma işlemini başlatabilir. Bu bağlantı ilişki türünün belgelerinin, istemcinin, kişileri mesaj hizmetine aktarmak için bağlantının URI'sine bir POST isteği göndermesi gerektiğini söylediğini varsayalım. Bağlantının URI yetkisiz kullanım önlemek için bir güvenlik belirteci içerir.

# Request
POST /user/smith/import;t=bcb9169866c69410be37f68210a6986c HTTP/1.1 Host: messaging.example2.org

# Response
HTTP/1.1 303 See Other
Location: http://messaging.example2.org/user/smith Content-Type: application/xml;charset=UTF-8

#Request : Verileri dışarıya aktarma isteği 

Dışa aktarma sonuçlarını sağlaya URI istemci bu isteği gönderdiğinde mesajlaşma hizmeti kişilerin bir kopyasını almak için kişiler web hizmetine bir arka uç isteğinde bulunur. Bu işlem sırasında sunucular arasında güvenliğin nasıl yönetildiğine bağlı olarak mesajlaşma web hizmeti URI bulunan belirteci kişiler web hizmetine sunabilir. Bu süreçte kişi listesi verilerinin mesaj sunucusunda kullanılabilir olmasını sağlamaktan sunucular sorumludur.  İstemci yalnızca işlemi tetiklemekten sorumludur. Bu istemcinin eşzamanlılık kontrolü, atomsallık, veri formatlarındaki farklılık v.b dahil olmak üzere sunucunun uygulama ayrıntılarından ayrılmasını sağlar. Bu sunucular arasındaki koordinasyonun sonucudur. 

NOT:

Teknik ve organizasyonel sorunlar nedeniyle böyle bir koordinasyon mümkün olmadığında müşterinin tüm kişileri http://contacts.example2.org/user/contacts adresinden indirilip mesajlaşma servisine gönderilmesinden başka bir seçenek yoktur.





20 Mart 2021 Cumartesi

Gizlilik ve Bütünlük Nasıl Korunur?

 

 TLS ve HTTPS kullanarak, kaynakları yalnızca isteklere hizmet edecek şekilde yapılandırılmış bir sunucu üzerinden erişilebilir hale getirin.  HTTP katmanlı bir protokoldür. Mesaj aktarım güvenliği TCP /IP aktarım protokolüne dayanır. TLS (RFC 5246) pro üzerinden HTTP katmanlayarak SSL'in halefi olan tocol gizliği ve bütünlüğü koruyabilinir.  Şifreleme ve dijital imza ile uğraşmadan istek ve yanıtlar mesajların istemci ve sunucu kodundaki türlerini kapsar.
 
TLS  her iki sunucuda da karşılıklı kimlik doğrulama için kullanılabilir.  Kullanıcıların kimlik doğrulaması için temel kimlik doğrulamasını TLS güvenerek kullanılabilir.  TLS gizlilik ve bütünlük için kullandığınızda, protokol oluşturmaktan kaçınabilirsiniz. Bu tür güvenlik önlemleri için doğrudan istek ve yanıt mesajları ve dahası TLS mesajdan bağımsızdır. Herhangi bir medya türü veya talebi için kullanılabilir.

SOAP tabanlı web hizmetlerinin WS-Security'ye güvenli göndermenin yollarını belirtir. SOAP başlıklı belirteçler, örneğin kurcalamayı önlemek için SOAP tabanlı web hizmetleri SOAP mesajlarının başlığına aşağıdaki örnekteki gibi imza ekler.

# A SOAP message containing a signature
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

   <soapenv:Header>
      <wsse:Security
         soapenv:actor="http://www.example.org"
         soapenv:mustUnderstand="1"
         xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/04/secext">
         <Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
            <SignedInfo>
               <CanonicalizationMethod
                  Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
               <SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
               <Reference URI="#abcd">
                  <Transforms>
                     <Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
                  </Transforms>
                  <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
                  <DigestValue>... digest value</DigestValue>
               </Reference>
            </SignedInfo>
            <SignatureValue>...</SignatureValue>
            <KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
               ... key info ...
            </KeyInfo>
         </Signature>
      </wsse:Security>

   </soapenv:Header>
   <soapenv:Body>... application data ...</</soapenv:Body>
</soapenv:Envelope>

Bu mesaj Body öğesindeki uygulaa verilerini ve bunun imzasını içerir. Üstbilgi Bunun aksine RESTful web hizmetleri HTTPS kullanabilir. (TLS üzerinden  HTTP katmanlandırılmış) TLS in yöntemlerden bağımsız olarak dijital imzalar ve şifreleme ile ilgilenmesine izin vermek için kullanılan ortam türleri için.

HTTP nin katmanlı mimarisi uygulama düzeyindeki mesajları taşıma düzeyinde güvenlikten dolayı ayırır.