ΠΦΥ -Εκπαίδευση > Συζητήσεις πάνω σε ιατρικά θέματα
medisto
hathat2:
Γεια χαρά και απο μένα! Μπαίνω στη διαδικασία να συμμετάσχω στο topic γιατί το συζητούσα με έναν νέο ιατρό ξάδερφο, που τον απασχολεί το θέμα. Ως προγραμματιστής με κάποια εμπειρία ανάπτυξης εφαρμογών για το δημόσιο θα μπορούσα να βοηθήσω λιγάκι..
Καταρχήν το link για το ADF της ORACLE δέν έχει καμία σχέση με "μίμηση browser" είναι ένα framework της oracle. Οπότε σε καμία περίπτωση δεν αποτελεί απάντηση για το request του κυρίου tsoukase για link σε κάτι που να παραπέμπει-εξηγεί-παραδειγματίζει μια λειτουργία μίμησης browser.
Δεύτερον δεν υπάρχει η έννοια της μίμησης browser στην κοινότητα των προγραμματιστών διότι δεν είναι σαφής. Τί μίμηση είναι; Ο browser ναί είναι ένας client αλλά άλλο πράγμα είναι να συνδεθεί πάνω στον server με τα διαπιστευτήρια του ιατρού και άλλο να γράψει κατευθείαν πάνω στον server. Άν ο browser-εφαρμογή γράφει κατευθείαν στην βάση δεδομένων του server, τότε η εφαρμογή που όπως λέτε "μιμείται τον browser" έχει λάβει απο τους κυρίους που διαχειρίζονται τον server το username και password με δικαιώματα πρόσβασης στην βάση δεδομένων, και την ip και το port που ακούει ο server οπότε κύριοι σε αυτή την περίπτωση κάποιος άνοιξε την πόρτα στους κατασκευαστές αυτού του λογισμικού, και το username του γιατρού το ζητάνε απλά για να μπορούν μέσα στο χάος των εγγραφών όλων των ιατρών της Ελλάδας να δούνε σε ποιανού τον λογαριασμό θα γράψουν. (Δέν με αφορά και δεν γνωρίζω και ούτε ισχυρίζομαι οτι αυτό είναι μεμπτό ή παράνομο αυτά τα ξέρουν στην ΗΔΙΚΑ απλά λέω οτι για να γράψει κάποιος στην βάση κατευθείαν, έχει και τα credentials τα οποία πήρε απο αυτούς που διαχειρίζονται τον server της e-συνταγογράφηση).
Στην περίπτωση που η εφαρμογή για την οποία συζητάτε ΔΕΝ γράφει κατευθείαν πάνω στην βάση, αλλά χρησιμοποιώντας το cookie του γιατρού που έχει συνδεθεί στην e-συνταγογράφηση περνάει παραμέτρους μέσα απο τα URL τότε μπορείτε να το κάνετε κι εσείς αρκεί να ξέρετε όλα τα ονόματα μεταβλητών που παίζουν μπάλα με reverse engineering. Άν δέν μπορείτε να δείτε απο το firebug το wireshark ή ότι άλλο προτιμάτε, τα ονόματα των μεταβλητών όλων των πεδίων που εμπλέκονται τότε κάποιος πήγε σε μέντιουμ και τα έμαθε έγκυρα και αξιόπιστα. :D
Έχοντας δει προγράμματα του δημοσίου και τα υψηλά στάνταρ ασφαλείας τους, τουλάχιστον με αυτά που είχα δουλέψει εγώ στο παρελθόν (δεν είχανε σχέση με την υγεία), με πιάνει κλαψίγελος όταν σκέφτομαι οτι ένας οργανισμός του δημοσίου δέχεται να περνάνε request απο προγράμματα με το έτσι θέλω. Στην περίπτωσή σας ότι και να ισχύει θα ζητούσα απο τον αρμόδιο φορέα με τον πλέον επίσημο τρόπο να πάρει θέση πιστοποιώντας οτι ΝΑΙ αυτά τα προγράμματα δουλεύουν σωστά ή ΟΧΙ. Γιατί το προϊόν του reverse engineering είναι τόσο καλό όσο και ο δημιουργός του, και εσείς ώς ιατροί δεν πρέπει να κόβετε φάτσες για το ποιός προγραμματιστής σας γεμίζει το μάτι και ποιός όχι, αλλά να παίρνετε εγγυήσεις απο τους αρμόδιους οτι το τάδε και το τάδε δουλεύουν μια χαρά και να έχετε το κεφάλι σας ήσυχο!
Αυτά απο μένα και ελπίζω πραγματικά στο καλύτερο, γιατί απο τους φορείς του δημοσίου που γνωρίζω εγώ και που έχουν να κάνουν με ανάπτυξη λογισμικού έχω μόνο καλές εντυπώσεις.
Δ. Κουναλάκης:
@hathat2
Δεν ξέρω τι προγραμματιστής είσαι, αλλά από το γράψιμο σου το αντικείμενο που συζητάμε δεν το γνωρίζεις ούτε στο 1%. Θα ήθελα να το γράψω πιο ωμά και με το ζόρι κρατιέμαι. Είσαι καλοδεχούμενος στη συζήτηση όταν μάθεις κατ αρχήν τι είναι μια web εφαρμογή όπως αυτή του e-syntagografisi.gr.
@tsoukase
Η κρυπτογράφηση δεν το επηρεάζει και μπορείς να χρησιμοποιήσεις τον firefox για να κάνεις καταγραφή των https κλήσεων χωρίς να είναι απαραίτητο το wireshark.
Στο link σου έχω βάλει το ADF της Oracle καθώς όλος ο κώδικας είναι βασισμένος σε αυτό και θα σε βοηθήσει να καταλάβεις πως γίνονται πολλά από τα συνήθη όπως sessions, έλεγχος εγκυρότητας πεδίων, κλπ καθώς οι περισσότερες μεταβλητές που στέλνονται στα URL είναι κατά το ADF.
Θεωρητικά θα μπορούσες να χρησιμοποιήσεις την php για να κάνεις όλες τις κλήσεις. Πρακτικά όμως νομίζω ότι η php θα έχει προβλήματα σε κλήσεις που έγιναν timeout και γενικότερα ένα local λογισμικό με Non-blocking tcp stack θα ήταν καλύτερο για το χρήστη.
Αντίθετα το ΑΡΙ θα είναι σαφώς καλύτερο για την php καθώς εκεί ο αριθμός των https κλήσεων που γίνονται είναι ελάχιστος. Και προς τα εκεί θα πρέπει να στραφούμε.
Σε αυτή τη φάση, όμως μπορείς να υλοποιήσεις μέσω του API την άντληση συνταγής (εάν ξέρεις το barcode της), είναι δε το μόνο κομμάτι που λειτουργεί και για γιατρούς.
hathat2:
Κύριε tsoukase η προσωπική μου άποψη είναι μην προσπαθήσετε να κάνετε reverse enginnering σε κάτι το οποίο δεν γίνεται για ακαδημαϊκούς ή ερευνητικούς σκοπούς, ή το πολύ για κάνα σπάσιμο iPhone... ;) Εσείς μπορεί να βλέπετε request κλπ αλλά δεν ξέρετε τί άλλα trigger, sequence και ειδικές κλήσεις καλούνται σε περιπτώσεις που δεν ανιχνεύθηκαν κατα την έρευνά σας. Εδώ προγράμματα που βγαίνουν ολοκληρωμένα, που σχεδιάζονται με πλήρη επίγνωση της ανάλυσης απαιτήσεων μέχρι και την διαδικασία του release και πρώτα βγαίνουν σε beta για να πιάσουν περιπτώσεις που δεν φαντάστηκαν οι δημιουργοί τους. Αυτό δείχνει οτι το να ισχυριστείς οτι έπιασες όλο το usecase είναι υπερφίαλο ακόμα και όταν εσύ σχεδιάζεις το σύστημα, πόσο μάλλον στο reverse engineering. Αυτή τουλάχιστον είναι η προσωπική μου άποψη σαν επαγγελματίας προγραμματιστής που έχει συνεργαστεί με την ΓΓΠΣ στην ανάπτυξη της web εφαρμογής για ανταλλαγή δεδομένων μέσω XML για την μισθοδοσία του Ελληνικού δημοσίου της Ενιαίας Αρχής Πληρωμών από την μεριά του πελάτη - οργανισμού - εκκαθαριστή.
Σε κάθε περίπτωση όπως ένας άσχετος δεν πρέπει να γίνεται ιατρός του σαββατοκύριακου και να παίρνει αράδα φάρμακα γιατί νομίζει οτι κατάλαβε τί αρρώστια έχει έτσι και ένας μη έχων την γνώση του συγκεκριμένου συστήματος δεν πρέπει να στέλνει data σε ένα σύστημα δημόσιας υγείας (το οποίο είναι εκμετάλλευση τρύπας στην ασφάλεια ότι και να λέτε δεν θα ξεχάσουμε και αυτά που ξέρουμε για να μήν παρεξηγηθούν μερικοί) επειδή παρασύρθηκε απο την γοητεία του προγραμματισμού και των εργαλείων.
tsoukase:
@hathat2, προς το παρόν, αν και είμαι φοιτητής πληροφορικής στο Ανοικτό Πανεπιστήμιο, δεν μπορώ και δεν έχω χρόνο να ασχοληθώ με την ανάπτυξη οποιουδήποτε συστήματος διαχείρησης του e-synt. Αλλά σας βεβαιώ ότι αν είχα τη δυνατότητα θα το έπραττα, καθώς η εφαρμογή φαίνεται απλή (login και κλήσεις σε μία τεράστια βάση) και επίσης δεν υπάρχει νομικό εμπόδιο. Το αν οι κλήσεις γίνονται απευθείας, μέσα από cookies ή σε εσωτερικό στάδιο δεν είναι δύσκολο να αποκαλυφθεί και να ακολουθηθεί ανάλογα για την ανάπτυξη. Δεν είμαστε υπεύθυνοι για την ασφάλεια του συστήματος, την integrity της βάσης, την αποθήκευση των δεδομένων κτλ, παρά μόνο επικοινωνούμε με θεμιτό τρόπο αλλά πιο αυτοματοποιημένα από την original εφαρμογή. Δεν βλέπω που μπορεί να υπάρχει κίνδυνος, αν αυτά που λαμβάνουμε είναι τα αναμενόμενα από αυτά που στέλνουμε. Πχ σε μια λίστα συνταγών που έχουμε γράψει αντί να ανοίγουμε μία-μία για να δούμε το περιεχόμενό τους, μπορούμε να δημιουργήσουμε ένα button που το κάνει αυτόματα.
Δημήτρη, θα επιθυμούσα όπως όλοι μας να υπάρχει API για γιατρούς και αυτό των φαρμακείων δεν ενδιαφέρει. Οταν ανέφερα το AMP-stack εννοούσα, αν είναι δυνατόν η PHP να στέλνει ένα request για όλη τη συνταγή (πχ συνταγογράφηση) σε ένα non-blocking TCP-socket που θα είχαμε αναπτύξει και αυτό με τη σειρά του να επικοινωνεί με τον κατάλληλο τρόπο με το e-synt.
Για αρχή θα ήθελα να έχω μια ιδέα για ένα τέτοιο socket. Αν κατάλαβα καλά από το Technical του Oracle ADF, μας ενδιαφέρει το View Layer, όπου λέει: "For Web based interface Oracle ADF offers a rich set of over a 150 Ajax enabled JSF (JavaServer Faces) components that simplified the creation of dynamic and appealing user interfaces". Συνεπώς θα εντόπιζες το interface στην συνεργασία ADF-Faces και Ajax για την ανάπτυξη "Rich clients";
Ευχαριστώ και τους δύο!
Danae:
Και με το captcha τι γίνεται; Παρακάμπτεται;
Πλοήγηση
[0] Λίστα μηνυμάτων
[#] Επόμενη σελίδα
Μετάβαση στην πλήρη έκδοση