Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

How to use Trusted Connection when SQL server and web Server are on two separate machines

Îåêßíçóå áðü ôï ìÝëïò Χρήστος Γεωργακόπουλος. Τελευταία δημοσίευση από το μέλος Aris στις 14-06-2005, 13:35. Υπάρχουν 16 απαντήσεις.
Σελίδα 1 από 2 (17 εγγραφές)   1 2 >
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  12-06-2005, 18:09 2700

    How to use Trusted Connection when SQL server and web Server are on two separate machines

    http://weblogs.asp.net/AChang/archive/2004/04/15/113866.aspx

    Το post αναφέρεται σε 3 τρόπους για να βλέπει ο IIS τον SQL:

    1. Use a trusted connection with integrated authentication.
    2. Use the Aspnet_setreg.exe utility to encrypt the connection string and store it in the registry.  You can refer to these two articles for detailed instructions on how to do this:  http://support.microsoft.com/default.aspx?scid=kb;EN-US;329290 and http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnnetsec/html/SecNetHT11.asp
    3. Using DPAPI (Data Protection application programming interface) to secure the connection string.  You can refer to these articles: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnnetsec/html/SecNetHT08.asp and http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnsecure/html/windataprotection-dpapi.asp and http://www.codeproject.com/system/protected_data.asp

    Αν έχετε ασχοληθεί, ποιον τρόπο χρησιμοποιήτε; μήπως αφήνετε το κανονικό connection string με username και password από sql server user μέσα στο web config; Τι έχετε να προτείνετε επί του θέματος; Σκεφτείτε please και πιθανές επιπτώσεις του performance στις απαντήσεις σας...


    Χρήστος Γεωργακόπουλος
  •  13-06-2005, 17:27 2727 σε απάντηση της 2700

    Re: How to use Trusted Connection when SQL server and web Server are on two separate machines

    Εδώ και μέρες ήθελα να γράψω αυτό το guide αλλά μόλις σήμερα κατάφερα να συγκεντρώσω τα resources μου… Λοιπόν, έχουμε και λέμε: Οι επιλογές που έχουμε στη διάθεσή μας για την αποθήκευση του connection string είναι λίγο-πολύ οι παρακάτω:

    Web.config

    Είναι πολύ απλός τρόπος και το μόνο που χρειάζεται είναι να βάλουμε στο Web.Config κάτι σαν το παρακάτω:

     

    <configuration>

      <appSettings>

        <add key="ConnectionString" value="server=localhost;Trusted_Connection=true;database=Portal" />

      </appSettings>

    </configuration>

     

    Για να διαβάσουμε το connection string χρησιμοποιούμε την κλάση ConfigurationSettings και το property AppSettings. Συνήθως, φτιάχνουμε ένα επιπλέον abstraction layer το οποίο είναι υπεύθυνο για την διαχείριση των settings.

     

    Το κύριο πλεονέκτημα αυτής της λύσης είναι η ευκολία στο deployment, αφού το connection string θα γίνει deployed μαζί με το υπόλοιπο project. Για την περίπτωση που θα χρειαστεί να αλλάξει το connection string προκειμένου να αναφέρει τον production DB server, μπορούμε να φτιάξουμε ένα απλό Admin utility το οποίο θα ενημερώνει το appSetting και τα υπόλοιπα sections που μας ενδιαφέρουν. Το ωραίο είναι ότι παρότι τα settings είναι αποθηκευμένα σε ένα φυσικό αρχείο, πρόκειται για αρχείο το οποίο είναι cachαρισμένο (άρα συνεχώς στη μνήμη, άρα το fetch είναι ταχύτατο) και οποιαδήποτε αλλαγή σε αυτό προκαλεί το purge και re-cache του, όπερ σημαίνει ότι οι αλλαγές είναι αυτομάτως διαθέσιμες. Το κύριο μειονέκτημα είναι η έλλειψη security καθώς οι λεπτομέρειες του connection string είναι αποθηκεύμενες σε απλό text. Ένα workaround αυτού του προβλήματος είναι τα custom configuration sections που θα διαβάσετε παρακάτω ή χρήση του Enterprise Library Application Blocks (που θα διαβάσετε πιο παρακάτω).

    Machine.config

    Μια παραλλαγή της προηγούμενης μεθόδου, είναι η αποθήκευση του connection string στο Machine.config. Με αυτόν τον τρόπο μπορούμε να καθορίσουμε μόνο μία φορά τις ρυθμίσεις για τα διάφορα στάδια υλοποίησης του έργου (development, staging και production).

    Σε αυτήν την περίπτωση δεν χρησιμοποιούμε το appSettings section (γιατί τότε δεν κερδίζουμε τίποτα αν θα πρέπει κάθε φορά να το κάνουμε edit) αλλά ορίζουμε ένα ή παραπάνω custom configuration sections που μπορεί να επαναχρησιμοποιηθούν ανάλογα την περίσταση. Για να υλοποιήσετε μια τέτοια λύση θα πρέπει να ανοίξετε το Machine.config (καλού-κακού κάντε το ένα backup πρώτα). Στην αρχή του Machine.config βρείτε το section tag για το appSettings και αντιγράψτετο αλλάζοντας το όνομα. Το type attribute προσδιορίζει την κλάση που θα χειριστεί τις τιμές που θα αποθηκέψετε στο section αυτό. Η κλάση

    NameValueFileSectionHandler επιτρέπει την πρόσβαση με τη λογική των ζευγαριών name/value ενώ υπάρχει η δυνατότητα μέσα από το IConfigurationSectionHandler interface να φτιάξετε τους δικούς σας section handlers (αυτή η λύση έχει ιδιαίτερο ενδιαφέρον αν ενσωματωθεί και ένας encryptor/decryptror).  Επειδή κατά πάσα πιθανότητα, το custom section θα θέλετε να περιέχει και sub-sections, μπορείτε να φτιάξετε κάτι όπως το παρακάτω:

     

    <sectionGroup name="MySite">

      <sectionGroup name="Settings">

        <section name="Site"

    type="System.Configuration. NameValueFileSectionHandler,,

    System "/>

      </sectionGroup>

    </sectionGroup>

     

    Κατόπιν, μπορείτε να ορίσετε το νέο custom section όπως παρακάτω (παρατηρήστε τις αντιστοιχίες):

     

    <MySite>

      <Settings>

        <Site>

          <add key= "DevelopConnectionString" value="devServer;Trusted_Connection=true;database=DevSite" />

          <add key="StagingConnectionString"

    value="stagingServer;Trusted_Connection=true;database=StagingSite"/>

          <add key= "ProdConnectionString"

    value="prodServer;Trusted_Connection=true;database=ProdSite" />

        </Site>

      </Settings>

    </MySite>

     

    Για να διαβάσετε αυτές τις ρυθμίσεις, μπορείτε να χρησιμοποιήσετε κάτι σαν τον παρακάτω κώδικα:

     

    Imports System

    Imports System.Collections

    Imports System.Configuration

    Public Class CustomConfiguration

      Public Shared ReadOnly Property ProdSettings() As Hashtable

        Get

          Return CType(ConfigurationSettings.GetConfig(ConfigurationSettings.AppSettings("MySite/Settings/Site")("ProdConnectionString"), Hashtable)

        End Get

      End Property

    End Class

    Enterprise Library Application Blocks

    Μια άλλη εναλλακτική λύση είναι η χρήση του ELAB. Μέσα σε αυτό υπάρχει το Configuration Application Block το οποίο παρέχει ένα ολοκληρωμένο framework για τη διαχείριση των ρυθμίσεων, με τη δυνατότητα αποθήκευσης των ρυθμίσεων σε οποιοδήποτε storage provider, ενώ σε συνδυασμό με το Cryptography Application Block, μπορούμε να υλοποιήσουμε λύσεις που είναι secure. Το πλεονέκτημα αυτής της λύσης είναι ότι παρέχει ένα πλήρες set από εργαλεία (και μάλιστα τα ίδια τα ELAB χρησιμοποιούν τον εαυτό τους) όμως θα πρέπει να υπολογίσει κανείς το learning curve που απαιτείται προκειμένου να τα μάθει και να τα ενσωματώσει στην εφαρμογή του, καθώς και την αύξηση της πολυπλοκότητας στο deployment.

    Registry Settings

    Η τελευταία εναλλακτική λύση είναι η αποθήκευση στο registry. Εδώ το πλεονέκτημα είναι ότι τα διάφορα registry keys μπορούν να προστατευθούν μέσω Access Control Lists (ACLs) ενώ το Framework παρέχει διάφορες κλάσεις για την πρόσβαση στο registry. To μειονέκτημα είναι ότι το deployment project θα πρέπει να δημιουργήσει αυτά το regisrty keys (με ότι αυτό συνεπάγεται ως προς την πολυπλοκότητα του εγχειρήματος)

    Custom λύσεις

    Εδώ περιλαμβάνονται διάφορες custom λύσεις όπως INI αρχεία, κλπ. Τυπικότερη όλων είναι το XML ή Binary serialization μιας κλάσης που λειτουργεί ως settings provider/manager. Αν ενδιαφέρεται κανείς, μπορώ να του δώσω δείγματα κώδικα…

     

    Συμπερασματικά, ως προς το security, δεν υπάρχει καμία λύση out-of-the-box. Απαιτείται να γράψουμε εμείς τον κώδικα που θα κάνει αυτή τη (βρωμο)δουλειά. Εναλλακτικά μπορούμε να χρησιμοποιήσουμε διάφορα βοηθητικά εργαλεία όπως τα ELAB ή το DPAPI class helper (Search με keywords «IssueVison» και «DPAPI» για περισσότερες πληροφορίες) ή να περιμένουμε το ASP.NET 2.0 που (αν θυμάμαι καλά) θα επιτρέπει την αποθήκευση κρυπτογραφημένων strings μέσα στα config αρχεία.

     

    Επιπρόσθετα, ρίξτε μια ματιά στα:

    http://msdn.microsoft.com/msdnmag/issues/03/11/ProtectYourData/default.aspx

    http://msdn.microsoft.com/msdnmag/issues/02/06/crypto/

    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnnetsec/html/SecNetHT07.asp


    Vir prudens non contra ventum mingit
  •  13-06-2005, 18:30 2729 σε απάντηση της 2727

    Re: How to use Trusted Connection when SQL server and web Server are on two separate machines

    !!! Μάλλον δεν με κατάλαβες.... Έστω ότι βάζεις το κλειδί στο web config. Πάμε στον Sql τώρα. Σε ποιον χρήστη θα δώσεις δικαιώματα; στον ASPNET που είναι Local στον IIS και ο SQL δεν τον ξέρει; Μιλάω για περιπτώσεις που ο SQL είναι σε αλλο μηχάνημα από τον IIS, οπότε το locahost πάει περίπατο...

    Δεν το διάβασες το αρθράκι που δίνω... μάλλον το post σου πρέπει να πάει κάπου αλλού ξεχωριστά για reference...
    Χρήστος Γεωργακόπουλος
  •  13-06-2005, 20:33 2733 σε απάντηση της 2729

    Re: How to use Trusted Connection when SQL server and web Server are on two separate machines

    Αμάν... Smile Παραπλανήθηκα... Η αλήθεια είναι ότι διάβασα πεταχτά το blog-post και μου έμεινε η εντύπωση ότι τι πρόβλημα είναι που αποθηκεύουμε το connection string και όχι πως setάρουμε τον IIS και τον SQL Server...

    Πάντως, επί του θέματος που έθεσες, αν έχεις όρεξη για διάβασμα, μπορείς να βρεις πολλές πληροφορίες εδώ: Building Secure ASP.NET Applications. Είναι ένα guide μικρό... 600 περίπου σελίδων... που λέει τα πάντα... IIS+SQL Server σε intranet, σε extranet, σε public access, με ενδιάμεσο proxy, με Enterprise Services, με remoting, με Web services... 


    Vir prudens non contra ventum mingit
  •  13-06-2005, 21:03 2734 σε απάντηση της 2729

    Re: How to use Trusted Connection when SQL server and web Server are on two separate machines

     cgeo wrote:
    !!! Μάλλον δεν με κατάλαβες.... Έστω ότι βάζεις το κλειδί στο web config. Πάμε στον Sql τώρα. Σε ποιον χρήστη θα δώσεις δικαιώματα; στον ASPNET που είναι Local στον IIS και ο SQL δεν τον ξέρει; Μιλάω για περιπτώσεις που ο SQL είναι σε αλλο μηχάνημα από τον IIS, οπότε το locahost πάει περίπατο...


    Φτιάχνεις domain account, σε αυτόν δίνεις τα δικαιώματα στον SQL και αποθηκεύεις τα username & password στο registry.

    Άρης
    Aris
  •  13-06-2005, 21:19 2735 σε απάντηση της 2733

    Re: How to use Trusted Connection when SQL server and web Server are on two separate machines

    Thanx, είναι χρήσιμα έτσι μαζεμένα.
    Anyway αποφάσισα να ακολουθήσω την τακτική mirrored local accounts, το είχε και ο τυπάς στο αρχικό μου post, αλλά το είδα πολύ μπακάλικο... Αφού όμως το προτείνει η microsoft και είναι και βολικό (σε σχέση με τα άλλα)...

    Αντιγράφω από το pdf με τις 608 σελίδες :

    Use "mirrored" local accounts (that is, accounts with matching usernames and passwords on two computers). You need to use this approach when the computers are in separate domains with no trust relationship or when the computers are separated by a firewall and you cannot open the ports required for NTLM or Kerberos authentication.

    The simplest approach is to change the ASPNET account's password to a known value on the Web server and then create an account named ASPNET with the same password on the target computer. On the Web server, you must first change the ASPNET account password in Local Users and Groups and then replace "AutoGenerate" with the new password in machine.config.

    Πάντως αν κάποιος έχει λόγους να χρησιμοποιεί κάτι άλλο, ας το πει να το συζητήσουμε...


    Χρήστος Γεωργακόπουλος
  •  13-06-2005, 21:31 2736 σε απάντηση της 2734

    Re: How to use Trusted Connection when SQL server and web Server are on two separate machines

     Aris wrote:
    Φτιάχνεις domain account, σε αυτόν δίνεις τα δικαιώματα στον SQL και αποθηκεύεις τα username & password στο registry.

    Άρης


    Είναι λύση που έχεις εφαρμόσει; Αν ναι γιατί προτίμησες αυτή έναντι των άλλων; (Στο θεωρητικό είναι γνωστό, αλλά στην πράξη μπαίνουν και άλλοι παράγοντες)
    Χρήστος Γεωργακόπουλος
  •  13-06-2005, 21:50 2737 σε απάντηση της 2736

    Re: How to use Trusted Connection when SQL server and web Server are on two separate machines

    Έχεις υπ' όψιν σου κάποιο συγκεκριμένο σενάριο;

    Άρης
    Aris
  •  13-06-2005, 22:10 2739 σε απάντηση της 2737

    Re: How to use Trusted Connection when SQL server and web Server are on two separate machines

     Aris wrote:
    Έχεις υπ' όψιν σου κάποιο συγκεκριμένο σενάριο;

    Άρης

    Για να καταλάβεις γιατί το συζητάω εδώ μέσα:

    • Λύση με connection string στο registry:
      • Αρκετά ασφαλής
      • Περιπλοκότερη στην επεξήγηση στους άλλους developers (juniors)
      • Πιο χρονοβόρα σε αποκατάσταση σε περίπτωση καταστροφής του web server
    • Λύση με DPAPI:
      • Ασφαλής
      • Αρκετό μπλέξιμο
      • Ούτε που το συζητάμε να το εξηγήσω στους άλλους, αν σκάσει θα πρέπει να τρέχω εγώ και μόνο εγώ
    • Λύση με Mirrored acounts:
      • Απλή στην υλοποίηση
      • Εύκολα επεξηγήσιμη
      • Φαίνεται λίγο μπακάλικη

    Από αυτές τις "πρακτικές" πλευρές το ψάχνω. Εκτός το θέμα ασφάλεια και άλλες θεωρητικούρες, τα manuals δεν σου λένε κάτι άλλο. Γι' αυτό ψάχνω άτομα που να έχουν πετύχει παρόμοιες καταστάσεις και να μου πουν την άποψή τους. Επίσης, ενδεχομένως κάποιος που το έχει ζήσει να μου προτείνει κάποια σημεία στα οποία από την πείρα του ξέρει ότι πρέπει να πέσει περισσότερο βάρος...

     


    Χρήστος Γεωργακόπουλος
  •  13-06-2005, 22:49 2741 σε απάντηση της 2737

    Re: How to use Trusted Connection when SQL server and web Server are on two separate machines

    Χμ... [*-)]

    Η αλήθεια είναι ότι πάντα το πρόβλημα είναι αυτό που απαιτεί λύση. Να έχουμε στο μυαλό μας γενικά λύσεις χωρίς να είναι αντιστοιχισμένα σε προβλήματα δεν είναι πρακτικό.

    Αν θεωρήσουμε ένα web server που είναι hosted enviroment, και δεν έχουμε πολλά στον server, να κάνεις κάτι καλύτερο από το να γράψεις το connection string στο web.config, δεν μπορείς. Οπότε σε αυτή την περίπτωση να ζητήσεις ο ASPNET χρήστης, να μπορεί να συνδεθεί με Windows Authenication πάνω στον SQL Server είναι σίγουρα η πιο σωστή λύση.

    Αν ο έλεγχος είναι πιο μεγάλος επάνω στον Web Server, κάνουμε host τον server μόνοι μας, τότε σίγουρα μπορούμε να κάνουμε περισσότερα, όσο έχει να κάνει με το θέμα της ασφάλειας. Καλό θα ήταν τα connection strings να τα περνάμε στο machine.config, αν είναι να είναι να περιέχουν passwords.

    Εδώ θα μπορούσαμε να χρησιμοποιήσουμε τα connection strings στο registry, αλλά σίγουρα θα είναι σε βάρος της ευκολίας του deployment των εφαρμογών, όπως αναφέρθηκε. Σε εξειδικευμένες περιπτώσεις, όταν είναι για εφαρμογές που περιέχουν κρίσιμα δεδομένα, κρίσιμα στην εμπιστευτικότητα, όπως HR δεδομένα είναι μία από τις λύσεις που παίζει πολύ μιας και χειριστής θα είναι και πιθανώς το μοναδικό άτομο που θα μπορεί να χειρίζεται αυτά τα δεδομένα.

    Όσο έχει να κάνει με το DAPI καλό είναι να έχετε υπόψη ότι γενικά τα functions που έχουν να κάνουν με το CryptAPI των Windows, απαιτούν και δικαιώματα Administrator. Καλό είναι να αποφεύγεται, λογαριασμοί που ανήκουν στο group των local/domain administrators να τρέχουν Web Applications. Αν θέλουμε να μπούμε στον κόπο για την υλοποίηση κάτι τέτοιου, καλό θα είναι να είναι μέσα στο business layer, που κατά πάσα πιθανότητα είναι μέσα στο component services και η χρήση ενός λογαριασμού με elevated privileges δεν είναι πρόβλημα.

    Αν υποθέσουμε ότι ο Web Server και ο SQL Server είναι δύο διαφορετικές μηχανές και θέλουμε να έχουμε trusted connection. Λοιπόν το σημείο είναι λεπτό, αλλά to καλύτερο είναι να έχουμε ένα domain εδώ. Σίγουρα δεν θα είναι το domain που είναι όλοι οι άλλοι servers της εταιρείας, και εξυπηρετεί τους χρήστες, αλλά ένα domain που θα εξυπηρετεί αυτό και μόνο στο σκοπό, την επικοινωνία των 2 αυτών servers. Εκτός ότι οι λογαριασμοί θα ελέγχονται από το domain, μπορούμε να προχωρήσουμε και ένα βήμα πιο πέρα, με IPSec, Certificates και SSL και όλα τα καλά που μπορούμε να έχουμε σε ένα domain.

    Αν έχουμε να κάνουμε με μια συστοιχία servers, web farm και έχουμε το πρόβλημα του session και υπάρχει ο session server, και να το πάμε ένα βήμα πιο πέρα, θέλουμε να κάνουμε το deployment και την παρακολούθηση της συστοιχίας με τον Application Server 2000, τότε το domain είναι μονόδρομος.

    George J.


    George J. Capnias: Χειροπρακτικός Υπολογιστών, Ύψιστος Γκουράρχης της Κουμπουτερολογίας
    w: capnias.org, t: @gcapnias, l: gr.linkedin.com/in/gcapnias
    dotNETZone.gr News
  •  14-06-2005, 00:07 2748 σε απάντηση της 2739

    Re: How to use Trusted Connection when SQL server and web Server are on two separate machines

    Χρήστο, αυτό που έχει σημασία είναι το "σενάριο" που ζητάει ο Άρης. Πρόκειται για internet application? Intranet? Extranet? Πως είναι οργανωμένο το infrastructure? Ποιά είναι τα requirements? Ποιά είναι τα resources? Χωρίς αυτές τις πληροφορίες, μπορεί η εμπειρία που ενδεχομένως να έχει κάποιος σε ένα σενάριο να είναι άχρηστη για κάποιο άλλο σενάριο... Μια λύση που μπορεί να είναι άψογη για έναν οργανισμό που έχει DB admin, WEB admin και in-house developers, μπορεί να είναι καταστροφική για κάποιον οργανισμό που έχει απλά έναν "IT manager", και πάει λέγοντας. Ας πούμε, εσύ απ'ότι βλέπω θέτεις ως ένα σοβαρό κριτήριο το κατά πόσο μπορεί να επεξηγηθεί εύκολα η λύση σε άλλους devepers. Ομολογώ ότι δεν το είχα σκεφτεί ποτέ από αυτήν την άποψη.


    Vir prudens non contra ventum mingit
  •  14-06-2005, 00:36 2752 σε απάντηση της 2748

    Re: How to use Trusted Connection when SQL server and web Server are on two separate machines

    Το σενάριο: smart clients από internet και intranet, μιλάνε με ένα web server που και αυτός με τη σειρά του μιλάει με έναν sql server. Τα μηχανήματα είναι στο εταιρικό domain, είναι καθαρά (δεν κάνουν άλλες δουλιές) και το load είναι πολύ μεγάλο. Τα δεδομένα είναι αρκετά sensitive. Το development και η διαχείριση γίνονται in-house από ικανοποιητικό στο μέγεθός του team.

    Οι αρχικοί στόχοι ήταν:

    1. να εξαφανίσω το connection string από το web.config (και γενικά όσα λιγότερα στον web, τόσο καλύτερα)
    2. να χρησιμοποιώ μόνο windows authentication στον sql για να έχω εννιαία διαχείριση του χρήστη με τον οποίον δουλεύουν τα services στον sql με τους υπόλοιπους τοπικούς μου χρήστες (olap, backup, συντήρηση, deployment)

    Την επεξήγηση - εκπαίδευση άλλων developers της εταιρίας τη δίνω σαν παράδειγμα πρακτικού προβλήματος που δεν περιγράφεται στα manuals και ενδεχομένως μόνο κάποιος με αντίστοιχη εμπειρία θα μπορούσε να το αναφέρει. Πάντως είναι και αυτό ένα υπαρκτό πρόβλημα στις λύσεις που υιοθετώ.


    Χρήστος Γεωργακόπουλος
  •  14-06-2005, 01:47 2758 σε απάντηση της 2752

    Re: How to use Trusted Connection when SQL server and web Server are on two separate machines

    Αυτό το πρόβλημα που παραθέτεις δεν είναι άγνωστο.

    Ένας τρόπος να αντιμετωπίσεις αυτό τη κατάσταση θα ήταν μην έβγαζες τον Web Server στο Internet. Από αυτά που λες, μέγάλη ευαισθησία των δεδομένων, ανάγκη authentication στο εταιρικό domain, μόνο για exposure μέσω internet δεν είναι. Είναι μια καθαρή υπόθεση και best practice για VPN.

    Με το VPN θα αύξανες στο κατακόρυφο την ασφάλεια των clients που θα έμπαιναν μέσω internet, χωρίς να κάνεις compomize στο security του Web Server. Θα είχες μια μόνο intranet εφαρμογή και από κει και πέρα η δυσκολία του εγχειρήματος πέφτει...

    George J.

    George J. Capnias: Χειροπρακτικός Υπολογιστών, Ύψιστος Γκουράρχης της Κουμπουτερολογίας
    w: capnias.org, t: @gcapnias, l: gr.linkedin.com/in/gcapnias
    dotNETZone.gr News
  •  14-06-2005, 10:09 2759 σε απάντηση της 2758

    Re: How to use Trusted Connection when SQL server and web Server are on two separate machines

    Έχω χρήστες από internet που δεν μπορώ/θέλω να τους επιβαρύνω με vpn, μισθωμένες κλπ. Πρέπει με το απλό dial-up με την κάρτα από το περίπτερο να μπορούν να έχουν πρόσβαση σε πληθώρα δεδομένων.
    Χρήστος Γεωργακόπουλος
  •  14-06-2005, 10:55 2760 σε απάντηση της 2759

    Re: How to use Trusted Connection when SQL server and web Server are on two separate machines

     cgeo wrote:
    Έχω χρήστες από internet που δεν μπορώ/θέλω να τους επιβαρύνω με vpn, μισθωμένες κλπ. Πρέπει με το απλό dial-up με την κάρτα από το περίπτερο να μπορούν να έχουν πρόσβαση σε πληθώρα δεδομένων.


    Το VPN παίζει πάνω από μια σύνδεση σαν αυτή που περιγράφεις.

    Συνδέεσαι πρώτα στο Internet με όποιο τρόπο είναι δυνατόν, παίζει και πάνω από GPRS/3G - ο VPN client είναι default σε όλα 3G μοντέλα τις Nokia, υποστήριξη VPN υπάρχει από τα Pocket PC 2003 και πέρα, για τα smartphones δεν είμαι σίγουρος, ας με συμπληρώσει ο atsouch - και μετά κάνεις μια δεύτερη σύνδεση στον RAS της εταιρείας - ένας απλός windows server που του έχει δωθεί η ιδιότητα, αν υπάρχει στο infrastructure ISA, μπορεί να είναι ο ISA.

    Απλά αυτή η δεύτερη σύνδεση είναι κρυπτογραφιμένη και δεν είναι δυνατόν, να υποκλέψεις δεδομένα. Μπορείς να ενεργοποιήσεις IPSec και άλλα καλούδια μιας και ο client είναι πλέον μέσα στο corporate δίκτυο. Θεωρείται ένας από τους πιο ασφαλείς τρόπους για συνδεθείς μέσα σε corporate network από ένα "εχθρικό" δίκτυο.

    Πιθανώς ο dpapits είναι πιο ειδικός, σαν MCSE, και μπορεί να δώσει περισσότερες πληροφορίες όσο για την ασφάλεια που μπορεί να προσφέρει το VPN, όσο για τι απαιτήται για να στηθεί ένας VPN/RAS server σε ένα corporate δίκτυο, αλλά σε διαβεβαιώνω ότι δεν υπάρχει έξτρα κόστος, όσο έχει να κάνει με περισσότερα κυκλώματα OTE ή άλλη σύνδεση από την κανονική στο Internet.

    George J.


    George J. Capnias: Χειροπρακτικός Υπολογιστών, Ύψιστος Γκουράρχης της Κουμπουτερολογίας
    w: capnias.org, t: @gcapnias, l: gr.linkedin.com/in/gcapnias
    dotNETZone.gr News
Σελίδα 1 από 2 (17 εγγραφές)   1 2 >
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems