none
MS Knowledge Base: Bagaimana cara menggunakan Microsoft Windows Azure platform AppFabric Service Bus dan Microsoft WCF Data Services untuk mengekspos database lokal ke internet?(Part 1) RRS feed

  • Diskusi Umum

  • Artikel ini menjelaskan tentang sampel All-In-One Code Framework yang tersedia untuk di-download. 

    Bila anda ingin mengekspos database lokal ke internet anda dapat mempertimbangkan banyak hal,

    termasuk:

     

    ·         Bagaimana untuk mengekspos database anda. Jika anda langsung mengizinkan koneksi TCP ke SQL Server lokal, hal tersebut akan menimbulkan masalah keamanan yang serius. 

    ·         Bagaimana mengukur skala keseluruhan sistem


    Sampel kode ini menunjukkan bagaimana menggunakan Windows Azure platform AppFabric untuk mengatasi kedua masalah di atas, dan menggunakan teknik-teknik/produk berikut:

    ·         Service Bus in Windows Azure platform AppFabric

    ·         WCF Data Services (formerly named ADO.NET Data Services)

    ·         Microsoft SQL Server

     

    Tingkat Kesulitan

    Tinggi

     

    Pembahasan Teknis

     

    Service Bus dalam Windows Azure platform AppFabric memberikan fleksibilitas dan skalabilitas dari solusi yang ada.

    Catatan Anda dapat mengacu pada sampel LoadBalance di AppFabric SDK untuk mempelajari rincian
    detail tentang bagaimana menggunakan Service Bus untuk menampilkan saldo layanan Anda.

    Service Bus juga memungkinkan anda untuk mengekspos data lokal ke internet. Karena itu, anda dapat mengkonsumsi data dalam aplikasi cloud. WCF Data Services bekerja sebagai node perantara yang dapat memberikan kontrol akses tambahan dan logika bisnis lainnya untuk memenuhi kebutuhan anda. Pelaksanaan dari solusinya sama seperti pelaksanaan self-hosted WCF Data Service. Perbedaannya adalah untuk menggunakan Windows Azure platform AppFabric Service Bus, binding mode dalam pelaksanaan solusi perlu diubah ke WebHttpRelayBinding binding mode. Dengan proses binding tersebut, anda dapat mengontrol otentikasi dengan menetapkan properti dari binding ke RelayClientAuthentication Type.None value atau RelayClientAuthenticationType.RelayAccessToken value. Jika anda menetapkan RelayClientAuthenticationType.RelayAccessToken value, Access Control Service akan terlibat untuk masalah akses token ke aplikasi klien anda. Kemudian, aplikasi klien akan menggunakan akses token ini untuk meminta pengiriman informasi pada Service Bus. Service Bus akan memvalidasi token, dan jika valid, maka token aplikasi klien akan diizinkan untuk berkomunikasi dengan lokal WCF Data Services. Dengan demikian Anda memiliki kontrol akses tambahan melalui bantuan Service Bus.

    Anda dapat menjalankan kode berikut ini untuk mendapatkan akses token dari Access Control Service:

    private static string GetTokenFromACS()

            {

                string s = string.Empty;

                try

                {

                    // Request a token from ACS

                    WebClient client = new WebClient();

                    client.BaseAddress = string.Format("https://{0}-sb.accesscontrol.windows.net",

                    _servicenamespace);

     

                    NameValueCollection values = new NameValueCollection();

                    values.Add("wrap_name", "owner");

                    values.Add("wrap_password", _issuerkey);

                    values.Add("wrap_scope", _scope);

     

                    byte[] responseBytes = client.UploadValues("WRAPv0.9", "POST", values);

                    string response = Encoding.UTF8.GetString(responseBytes);

                    Console.WriteLine("\nreceived token from ACS: {0}\n", response);

     

                    return response

                        .Split('&')

                        .Single(value => value.StartsWith("wrap_access_token=",

                        StringComparison.OrdinalIgnoreCase))

                        .Split('=')[1];

                }

                catch (WebException ex)

                {

                    // You can set a breakpoint here to check detailed exception from detailedexception

                    StreamReader sr = new StreamReader(ex.Response.GetResponseStream());

                    var detailedexception = sr.ReadToEnd();

                }

                return s;

            }

     

    Berlanjut ke MS Knowledge Base: Bagaimana cara menggunakan Microsoft Windows Azure platform AppFabric Service Bus dan Microsoft WCF Data Services untuk mengekspos database lokal ke internet?(Part 2)


    Agnes Sannie [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    Senin, 11 April 2011 06.25
    Moderator