Bagikan melalui


Cara Mengonfigurasi Port Pengiriman WCF-Custom

Anda dapat mengonfigurasi WCF-Custom mengirim port baik secara terprogram atau dengan menggunakan konsol Administrasi BizTalk.

Properti konfigurasi

Model Objek Penjelajah BizTalk memaparkan antarmuka khusus adaptor untuk mengirim port bernama ITransportInfo yang memiliki properti baca/tulis TransportTypeData . Properti ini menerima WCF-Custom mengirim tas properti konfigurasi port dalam bentuk pasangan nama-nilai string XML.

Properti TransportTypeData antarmuka ITransportInfo tidak diperlukan. Jika tidak diatur, adaptor menggunakan nilai default untuk konfigurasi port pengiriman WCF-Custom, seperti yang ditunjukkan dalam tabel berikut.

Daftar berikut ini menjelaskan properti konfigurasi yang dapat Anda atur di Model Objek Penjelajah BizTalk untuk WCF-Custom mengirim port:

  • Nama properti: Identitas

    • Jenis: Blob XML

      Contoh:

      <identity>
      <userPrincipalName value="username@contoso.com" />
      </identity>
      
    • Deskripsi: Tentukan identitas layanan yang diharapkan port pengiriman ini. Pengaturan ini memfungsikan port pengiriman ini untuk mengautentikasi layanan. Dalam proses jabat tangan antara klien dan layanan, infrastruktur WCF akan memastikan bahwa identitas layanan yang diharapkan cocok dengan nilai elemen ini. Nilai yang dapat ditentukan untuk properti Identitas berbeda sesuai dengan konfigurasi keamanan.

      Defaultnya adalah string kosong.

  • Nama properti: StaticAction

    • Jenis: String

    • Deskripsi: Tentukan bidang header SOAPAction untuk pesan keluar. Properti ini juga dapat diatur melalui properti konteks pesan WCF. Tindakan dalam alur atau orkestrasi. Anda dapat menentukan nilai ini dengan dua cara berbeda: format tindakan tunggal dan format pemetaan tindakan. Jika Anda mengatur properti ini dalam format tindakan tunggal, seperti http://contoso.com/Svc/Op1, maka header SOAPAction untuk pesan keluar selalu diatur ke nilai yang ditentukan dalam properti ini.

      Jika Anda mengatur properti ini dalam format pemetaan tindakan, header SOAPAction keluar ditentukan oleh BTS. Properti konteks operasi . Misalnya, jika properti ini diatur ke format XML berikut dan BTS. Properti operasi diatur ke Op1, lalu adaptor pengiriman WCF menggunakan http://contoso.com/Svc/Op1 untuk header SOAPAction keluar.

      <BtsActionMapping>
      <Operation Name="Op1" Action="http://contoso.com/Svc/Op1" />
      <Operation Name="Op2" Action="http://contoso.com/Svc/Op2" />
      </BtsActionMapping>
      

      Jika pesan keluar berasal dari port orkestrasi, instans orkestrasi secara dinamis mengatur BTS. Properti operasi dengan nama operasi port. Jika pesan keluar dirutekan dengan perutean berbasis konten, Anda dapat mengatur BTS. Properti operasi dalam komponen alur.

      Defaultnya adalah string kosong.

  • Nama properti: BindingType

    • Jenis: Enum

      Untuk informasi selengkapnya tentang nama anggota untuk properti BindingType , lihat properti Jenis Pengikatan di Kotak Dialog Properti Transportasi Kustom WCF, Tab Kirim, Pengikatan di panduan UI dan referensi namespace LAYANAN API pengembang.

    • Deskripsi: Tentukan jenis pengikatan yang akan digunakan untuk titik akhir yang digunakan port pengiriman ini.

      Jika Anda menggunakan pengikatan kustom, properti BindingType dapat dikonfigurasi dengan pengikatan kustom. Untuk informasi selengkapnya tentang cara menggunakan pengikatan kustom, lihat Cara Mengaktifkan Titik Ekstensibilitas WCF dengan Adaptor WCF.

  • Nama properti: BindingConfiguration

    • Jenis: Blob XML

      Contoh:

      <binding name="netNamedPipeBinding">
      <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
      <security mode="None" />
      </binding>
      
    • Deskripsi: Tentukan string XML dengan <binding> elemen untuk mengonfigurasi berbagai jenis pengikatan yang telah ditentukan sebelumnya yang disediakan oleh Windows Communication Foundation (WCF). Untuk informasi selengkapnya tentang pengikatan yang disediakan sistem dan pengikatan kustom, lihat topik yang sesuai yang tercantum di Lihat Juga.

      BizTalk Server tidak mendukung semua jenis elemen ekstensi pengikatan yang dapat Anda konfigurasi dengan properti BindingConfiguration .

      Defaultnya adalah string kosong.

  • Nama properti: EndpointBehaviorConfiguration

    • Jenis: Blob XML

      Contoh:

      <behavior name="sampleBehavior">
      <callbackTimeouts />
      </behavior>
      
    • Deskripsi: Tentukan string XML dengan <behavior> elemen <endpointBehaviors> elemen untuk mengonfigurasi pengaturan perilaku titik akhir WCF. Untuk informasi selengkapnya tentang elemen , <endpointBehaviors> lihat topik yang sesuai di Lihat Juga.

      BizTalk Server tidak mendukung semua jenis elemen ekstensi perilaku yang dapat Anda konfigurasi dengan properti EndpointBehaviorConfiguration .

      Defaultnya adalah string kosong.

  • Nama properti: AffiliateApplicationName

    • Jenis: String

    • Deskripsi: Tentukan aplikasi afiliasi yang akan digunakan untuk Enterprise Single Sign-On (SSO).

      Defaultnya adalah string kosong.

  • Nama properti: UseSSO

    • Jenis: Boolean

    • Deskripsi: Tentukan apakah akan menggunakan Sign-On Tunggal untuk mengambil kredensial klien untuk autentikasi dengan server tujuan.

      Nilai default: False

  • Nama properti: Nama Pengguna

    • Jenis: String

    • Deskripsi: Tentukan nama pengguna yang akan digunakan untuk autentikasi dengan server tujuan saat properti UseSSO diatur ke False. Anda tidak perlu menggunakan domain\user format untuk properti ini.

      Defaultnya adalah string kosong.

  • Nama properti: Kata sandi

    • Jenis: String

    • Deskripsi: Tentukan kata sandi yang akan digunakan untuk autentikasi dengan server tujuan saat properti UseSSO diatur ke False.

      Defaultnya adalah string kosong.

  • Nama properti: OutboundBodyLocation

    • Jenis: Enum

      • UseBodyElement: Gunakan bagian isi pesan BizTalk untuk membuat konten elemen ISI SOAP untuk pesan keluar.
      • UseTemplate: Gunakan templat yang disediakan di properti OutboundXMLTemplate untuk membuat konten elemen Isi SOAP untuk pesan keluar.

      Untuk informasi selengkapnya tentang cara menggunakan properti OutboundBodyLocation , lihat Menentukan Isi Pesan untuk Adaptor WCF.

    • Deskripsi: Tentukan pemilihan data untuk elemen Isi SOAP dari pesan WCF keluar.

      Nilai default: UseBodyElement

  • Nama properti: OutboundXMLTemplate

    • Jenis: String

      Untuk informasi selengkapnya tentang cara menggunakan properti OutboundXMLTemplate , lihat Menentukan Isi Pesan untuk Adaptor WCF.

    • Deskripsi: Tentukan templat berformat XML untuk konten elemen Isi SOAP dari pesan keluar. Properti ini diperlukan jika properti OutboundBodyLocation diatur ke UseTemplate.

      Defaultnya adalah string kosong.

  • Nama properti: InboundBodyLocation

    • Jenis: Enum

      • UseBodyElement: Gunakan konten elemen ISI SOAP dari pesan masuk untuk membuat bagian isi pesan BizTalk. Jika elemen Body memiliki lebih dari satu elemen anak, hanya elemen pertama yang menjadi bagian isi pesan BizTalk. Properti ini hanya valid untuk port solicit-response.
      • UseEnvelope: Buat bagian isi pesan BizTalk dari seluruh Amplop SOAP pesan masuk.
      • UseBodyPath: Gunakan ekspresi jalur isi di properti InboundBodyPathExpression untuk membuat bagian isi pesan BizTalk. Ekspresi jalur isi dievaluasi terhadap elemen turunan langsung dari elemen ISI SOAP dari pesan masuk. Properti ini hanya valid untuk port solicit-response.

      Untuk informasi selengkapnya tentang cara menggunakan properti InboundBodyLocation , lihat Menentukan Isi Pesan untuk Adaptor WCF.

    • Deskripsi: Tentukan pemilihan data untuk elemen Isi SOAP dari pesan WCF yang masuk.

      Nilai default: UseBodyElement

  • Nama properti: InboundBodyPathExpression

    • Jenis: String

      Untuk informasi selengkapnya tentang cara menggunakan properti InboundBodyPathExpression , lihat Skema dan Properti Properti Adapter WCF.

    • Deskripsi: Tentukan ekspresi jalur isi untuk mengidentifikasi bagian tertentu dari pesan masuk yang digunakan untuk membuat bagian isi pesan BizTalk. Ekspresi jalur isi ini dievaluasi terhadap elemen turunan langsung dari simpul Isi SOAP dari pesan masuk. Jika ekspresi jalur isi ini mengembalikan lebih dari satu simpul, hanya simpul pertama yang dipilih untuk bagian isi pesan BizTalk. Properti ini diperlukan jika properti InboundBodyLocation diatur ke UseBodyPath. Properti ini hanya valid untuk port solicit-response.

      Defaultnya adalah string kosong.

  • Nama properti: InboundNodeEncoding

    • Jenis: Enum

      • XML
      • Base64: Pengodean Base64
      • Hex: Pengodean heksadesimal
      • String: Pengodean teks; UTF-8
      • XML: Adaptor WCF membuat isi pesan BizTalk dengan XML luar simpul yang dipilih oleh ekspresi jalur isi di InboundBodyPathExpression.
    • Deskripsi: Tentukan jenis pengodean yang digunakan adaptor pengiriman WCF-Custom untuk mendekode untuk simpul yang diidentifikasi oleh jalur isi yang ditentukan dalam InboundBodyPathExpression. Properti ini diperlukan jika properti InboundBodyLocation diatur ke UseBodyPath. Properti ini hanya berlaku untuk port solicit-response.

      Nilai default: XML

  • Nama properti: PropagateFaultMessage

    • Jenis: Boolean

      • Benar: Rutekan pesan yang gagal diproses keluar ke aplikasi berlangganan (seperti port penerima lain atau jadwal orkestrasi).
      • False: Menangguhkan pesan yang gagal dan menghasilkan pengakuan negatif (NACK).
    • Deskripsi: Tentukan apakah akan merutekan atau menangguhkan pesan yang gagal dalam pemrosesan keluar.

      Properti ini hanya berlaku untuk port solicit-response.

      Nilai default: True

  • Nama properti: ReferencedBindings

    • Jenis: Blob XML

      Contoh:

      <BindingConfiguration vt="8">
      <wsFederationHttpBinding>
        <binding name="sampleBinding">
         <security mode="Message">
          <message issuedKeyType="AsymmetricKey">
           <issuer address="http://www.contoso.com/samplests" binding="wsFederationHttpBinding" bindingConfiguration="contosoSTSBinding"/>
          </message>
         </security>
        </binding>
      </wsFederationHttpBinding>
      </BindingConfiguration>
      <ReferencedBindings vt="8">
      <bindings>
        <wsFederationHttpBinding>
         <binding name="contosoSTSBinding">
          <security mode="Message">
           <message negotiateServiceCredential="false">
            <issuer address="http://northwind.com/samplests" bindingConfiguration="northwindBinding" binding="wsHttpBinding">
            </issuer>
           </message>
          </security>
         </binding>
        </wsFederationHttpBinding>
        <wsHttpBinding>
         <binding name="northwindBinding">
          <security mode="Message">
           <message clientCredentialType="Certificate" />
          </security>
         </binding>
        </wsHttpBinding>
      </bindings>
      </ReferencedBindings>
      

      Properti ReferencedBinding tidak boleh berisi konfigurasi pengikatan yang digunakan dalam properti BindingConfiguration .

    • Deskripsi: Tentukan konfigurasi pengikatan yang dirujuk oleh atribut bindingConfiguration elemen <issuer> untuk wsFederationHttpBinding dan customBinding, yang menunjukkan Layanan Token Keamanan (STS) yang mengeluarkan token keamanan. Untuk informasi selengkapnya tentang <issuer> elemen , lihat skema konfigurasi WCF: <issuer>.

      Informasi pengikatan termasuk <issuer> elemen untuk wsFederationHttpBinding dan customBinding dapat dikonfigurasi melalui properti BindingConfiguration dari WCF-Custom dan adaptor WCF-CustomIsolated. Semua konfigurasi pengikatan yang dirujuk untuk properti ini harus ditempatkan dalam bentuk <bindings> elemen .

      Anda tidak dapat mengonfigurasi properti ini pada tab Pengikatan dalam kotak dialog properti transportasi. Anda dapat mengimpor dan mengekspor properti ini melalui tab Impor/Ekspor dalam kotak dialog properti transportasi adaptor WCF-Custom dan WCF-CustomIsolated.

      Atribut bindingConfiguration dari <issuer> elemen harus merujuk nama pengikatan yang valid di properti ini.

      Elemen <issuer> dalam konfigurasi pengikatan yang dirujuk juga dapat merujuk ke konfigurasi pengikatan yang berbeda dalam properti ini jika rantai referensi ini tidak membuat dependensi melingkar.

      Defaultnya adalah string kosong.

Mengonfigurasi WCF-Custom Send Port dengan BizTalk Administration Console

Anda dapat mengatur WCF-Custom mengirim variabel adaptor port di konsol Administrasi BizTalk. Jika properti tidak diatur untuk port kirim, nilai default untuk konfigurasi port pengiriman WCF-Custom digunakan, seperti yang ditunjukkan dalam tabel sebelumnya.

Mengonfigurasi variabel untuk port pengiriman WCF-Custom

  1. Jika Anda berencana untuk menggunakan titik ekstensibilitas WCF seperti elemen pengikatan kustom, elemen perilaku kustom, dan komponen saluran kustom saat mengonfigurasi adaptor WCF-Custom, Anda harus menambahkan rakitan yang mengimplementasikan titik ekstensibilitas dan semua rakitan dependen ke cache perakitan global pada komputer pemrosesan BizTalk (komputer runtime) dan komputer administrasi. Selain itu, Anda harus mendaftarkan komponen ekstensi ke file machine.config. Untuk informasi selengkapnya tentang cara menggunakan titik ekstensibilitas WCF dengan adaptor Kustom WCF, lihat Cara Mengaktifkan Titik Ekstensibilitas WCF dengan Adaptor WCF.

  2. Di konsol Administrasi BizTalk, buat port kirim baru atau klik dua kali port kirim yang ada untuk memodifikasinya. Untuk informasi selengkapnya, lihat Cara Membuat Port Kirim. Konfigurasikan semua opsi kirim port dan tentukan WCF-Custom untuk opsi Jenis di bagian Transportasi pada tab Umum di panduan UI dan referensi namespace API pengembang.

  3. Pada tab Umum , di bagian Transportasi , klik tombol Konfigurasi di samping Ketik.

  4. Dalam kotak dialog Properti Transportasi Kustom WCF , pada tab Umum , konfigurasikan alamat titik akhir, identitas layanan, dan header SOAPAction untuk port pengiriman WCF-Custom. Untuk informasi selengkapnya tentang tab Umum dalam kotak dialog Properti Transportasi Kustom WCF , lihat Kotak Dialog Properti Transportasi Kustom WCF, Tab Kirim, Umum di panduan UI dan referensi namespace API pengembang.

  5. Dalam kotak dialog Properti Transportasi Kustom WCF , pada tab Pengikatan , konfigurasikan berbagai jenis pengikatan yang telah ditentukan atau kustom untuk WCF. Untuk informasi selengkapnya tentang tab Pengikatan dalam kotak dialog Properti Transportasi Kustom WCF , lihat Kotak Dialog Properti Transportasi Kustom WCF, Tab Kirim, Pengikatan di panduan UI dan referensi namespace API pengembang.

  6. Dalam kotak dialog Properti Transportasi Kustom WCF , pada tab Perilaku , konfigurasikan perilaku titik akhir untuk port pengiriman ini. Perilaku titik akhir adalah sekumpulan elemen ekstensi perilaku yang memodifikasi atau memperluas fungsionalitas layanan atau klien. Untuk informasi selengkapnya tentang tab Perilaku dalam kotak dialog Properti Transportasi Kustom WCF , lihat Kotak Dialog Properti Transportasi Kustom WCF, Tab Kirim, Perilaku di panduan UI dan referensi namespace API pengembang.

  7. Dalam kotak dialog Properti Transportasi Kustom WCF , pada tab Kredensial , tentukan kredensial yang akan digunakan saat mengirim pesan. Untuk informasi selengkapnya tentang tab Kredensial dalam kotak dialog Properti Transportasi Kustom WCF lihat Kotak Dialog Properti Transportasi Kustom WCF, Tab Kirim, Kredensial di panduan UI dan referensi namespace API pengembang.

  8. Dalam kotak dialog Properti Transportasi Kustom WCF , pada tab Pesan , tentukan pilihan data untuk elemen Isi SOAP. Untuk informasi selengkapnya tentang tab Pesan dalam kotak dialog Properti Transportasi Kustom WCF , lihat Kotak Dialog Properti Transportasi Kustom WCF, tab Kirim, Pesan di panduan UI dan referensi namespace API pengembang.

  9. Dalam kotak dialog Properti Transportasi Kustom WCF , pada tab Impor/Ekspor , impor dan ekspor properti Alamat (URI) dan Identitas Titik Akhir pada tab Umum , informasi pengikatan pada tab Pengikatan , dan perilaku titik akhir pada tab Perilaku untuk port pengiriman ini. Untuk informasi selengkapnya tentang tab Impor/Ekspor dalam kotak dialog Properti Transportasi Kustom WCF , lihat Kotak Dialog Properti Transportasi Kustom WCF, tab Kirim, Impor-Ekspor di panduan UI dan referensi namespace LAYANAN API pengembang.

Mengonfigurasi WCF-Custom Kirim Port secara terprogram

Anda bisa menggunakan format berikut untuk mengatur properti:

<CustomProps>
  <OutboundXmlTemplate vt="8"><bts-msg-body xmlns="http://www.microsoft.com/schemas/bts2007" encoding="xml"/></OutboundXmlTemplate>
  <InboundBodyPathExpression vt="8" />
  <EndpointBehaviorConfiguration vt="8"><behavior name="sampleBehavior"><callbackTimeouts /></behavior></EndpointBehaviorConfiguration>
  <OutboundBodyLocation vt="8">UseBodyElement</OutboundBodyLocation>
  <StaticAction vt="8">http://www.northwindtraders.com/Service/Operation</StaticAction>
  <BindingConfiguration vt="8"><binding name="NetNamedPipeOrderProcessService.OrderProcessServieEndpoint"><readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384" /><security mode="None" /></binding></BindingConfiguration>
  <InboundNodeEncoding vt="8">Xml</InboundNodeEncoding>
  <UseSSO vt="11">0</UseSSO>
  <AffiliateApplicationName vt="8" />
  <BindingType vt="8">netNamedPipeBinding</BindingType>
  <InboundBodyLocation vt="8">UseBodyElement</InboundBodyLocation>
  <UserName vt="8" />
  <PropagateFaultMessage vt="11">-1</PropagateFaultMessage>
</CustomProps>

Fragmen kode berikut mengilustrasikan pembuatan port pengiriman WCF-Custom:

// Use BizTalk Explorer object model to create new WCF-Custom send port.
string server = System.Environment.MachineName;
string database = "BizTalkMgmtDb";
string connectionString = string.Format("Server={0};Database={1};Integrated Security=true", server, database);
string transportConfigData = @"<CustomProps>
                                 <StaticAction vt=""8"">http://www.northwindtraders.com/Service/Operation</StaticAction>
                                 <EndpointBehaviorConfiguration vt=""8""><behavior name=""sampleBehavior""><callbackTimeouts /></behavior></EndpointBehaviorConfiguration>
                                 <BindingType vt=""8"">netNamedPipeBinding</BindingType>
                               </CustomProps>";
//requires project reference to \Program Files\Microsoft BizTalk Server 2009\Developer Tools\Microsoft.BizTalk.ExplorerOM.dll
BtsCatalogExplorer explorer = new Microsoft.BizTalk.ExplorerOM.BtsCatalogExplorer();
explorer.ConnectionString = connectionString;
// Add a new BizTalk application
Application application = explorer.AddNewApplication();
application.Name = "SampleBizTalkApplication";
// Save
explorer.SaveChanges();

// Add a new static one-way send port
SendPort sendPort = application.AddNewSendPort(false, false);
sendPort.Name = "SampleSendPort";
sendPort.PrimaryTransport.TransportType = explorer.ProtocolTypes["WCF-Custom"];
sendPort.PrimaryTransport.Address = "net.pipe://mycomputer/private/samplequeue";
sendPort.PrimaryTransport.TransportTypeData = transportConfigData; // propertyData; // need to change
sendPort.SendPipeline = explorer.Pipelines["Microsoft.BizTalk.DefaultPipelines.PassThruTransmit"];
// Save
explorer.SaveChanges();

Lihat juga

Skema Properti Adapter WCF dan PropertiYang Menentukan Isi Pesan untuk Adaptor WCFMenginstal Sertifikat untuk Adaptor WCFMengonfigurasi Adapter WCF-CustomMengonfigurasi Port Kirim Dinamis Menggunakan Adaptor WCF Properti<Konteks yang mengikat><perilaku><endpointBehaviors>