12 Replies Latest reply on Jan 22, 2014 3:33 PM by Joni Vandenberghe

    Can APEX uniquely identify a PC (like mac address) ?

    bhatt t

      Hi,

       

      Orace XE 11.2

      APEX 4.0.2.0

       

      I am new to APEX and want to know that can APEX uniquely identify a PC (like mac address..) ?

      This is because that if I give my application to a user to install on his single PC, it should not be install on other PC.

      Please guide me how can I link APEX with a PC's configuration ?

       

      Thanks/Regds.

      Bhatt.

        • 1. Re: Can APEX uniquely identify a PC (like mac address) ?
          Mike Kutz

          This is because that if I give my application to a user to install on his single PC, it should not be install on other PC.

          This does not make sense.

          APEX system is used to develop web based application similar to Amazon.com

          An APEX Application does not get installed on a PC/MAC (like MS Word) but is accessed by PC/MAC/Linux/Android/iOS/Amiga/IRIX/AIX/Plan 9/etc based machines through the use of a Web Browser.

           

          Please explain your requirements (in detail), not "how" you want to solve it.

           

          MK

          • 2. Re: Can APEX uniquely identify a PC (like mac address) ?
            bhatt t

            Hi Mike Kutz,

             

            See, if I develop a desktop application in APEX and sale it to my customer to install it on his single particular PC, then I want that my customer could not be able to install/run it on some other PC without notifying me. For this, I want to make a lock system in  my  application,  which  uniquely  identify a  system (like ip address, mac address, some hidden file etc.) before installing/run on a PC i.e. my application can run/install on a PC only after passing some checks.

            Hope you understand my problem, so please guide me.

             

            Thanks with regards,

            Bhatt.

            • 3. Re: Can APEX uniquely identify a PC (like mac address) ?
              fac586

              bhatt t wrote:

               

              See, if I develop a desktop application in APEX and sale it to my customer to install it on his single particular PC

              That's not an appropriate deployment or business model for an APEX application. APEX apps run on an Oracle database and are accessed through a web browser. In 2014, people expect to be able to access their applications and data wherever they are, using the technology to hand—on their laptop at work/home; on their phone on the train; on an iPad in a hotel room. Software as a service is the proper delivery model for APEX-based products and services, not shrink-wrapped desktop installations.

              • 4. Re: Can APEX uniquely identify a PC (like mac address) ?
                AndyH

                Sounds like you want to add a 'licensing' module to the database side of application.

                 

                From PL/SQL you could query the name of the server that the database is running on and compare that against an expected name. Include this routine in your application authentication/authorization to prevent the application running on the 'wrong' server. You could also do a similar check against the expected remote_host to prevent the application being accessed by a browser other than on the expected PC.

                • 5. Re: Can APEX uniquely identify a PC (like mac address) ?
                  Joni Vandenberghe

                  Hi bhatt,

                   

                  It is kind of a weird request yes. If you do want to do this you could use of sys_context package. With that you could determine all kinds of information about their machine.

                  Oracle/PLSQL: SYS_CONTEXT Function

                   

                  Regards,

                  Joni

                  • 6. Re: Can APEX uniquely identify a PC (like mac address) ?
                    Ramani_apex

                    I have  been also researching this type of licencing,becoz we developed 100 forms and 50 reports with one application.once delivered the application then the end user can copy the source code and change the table or same to selling their/other circle without our knowledge!

                    this should be control the application owner itself. e.g Expire notification application is common anyone can utilizing the application to any kind of business.

                    Is it possible to Wrapping  the whole application source code?

                    • 7. Re: Can APEX uniquely identify a PC (like mac address) ?
                      ascheffer

                      If you deploy your Apex application on a database where your end user has access to, it is (almost) impossible to prevent the end user from looking at the code, changing the code or exporting the code.

                      You can place some crucial parts of the code in a wrapped database package, but even that isn't 100% secure.

                      • 8. Re: Can APEX uniquely identify a PC (like mac address) ?
                        bhatt t

                        Thanks all for a valuable discussion !

                         

                        Though "Andy H" & "Joni V" guided that it was possible by using   Oracle/PLSQL: SYS_CONTEXT Function., but overall, I came to know that APEX application is not suitable to get installed (Databse,APEX, all source) on a cusomter's PC, but it is accessed on a PC through  browser  from  a  remote  server,  i.e.  all  installations  (database,apex, source files etc)  would  be  on  remote  server  and  no  installation  can  be  on  a customer's PC, he would only require a browser with internet connection.OK.

                        Then, guide me which payment method can be adopted, so as to get payment from our customers, as per their usage and give me reference of APEX hosting companies for the same.

                         

                        Thanks with regards.

                        Bhatt T.

                        • 9. Re: Can APEX uniquely identify a PC (like mac address) ?
                          fac586

                          bhatt t wrote:

                           

                          Thanks all for a valuable discussion !

                           

                          Though "Andy H" & "Joni V" guided that it was possible by using   Oracle/PLSQL: SYS_CONTEXT Function., but overall, I came to know that APEX application is not suitable to get installed (Databse,APEX, all source) on a cusomter's PC, but it is accessed on a PC through  browser  from  a  remote  server,  i.e.  all  installations  (database,apex, source files etc)  would  be  on  remote  server  and  no  installation  can  be  on  a customer's PC, he would only require a browser with internet connection.OK.

                          Then, guide me which payment method can be adopted, so as to get payment from our customers, as per their usage and give me reference of APEX hosting companies for the same.

                          That would depend on a number of factors. Start by explaining what the application does and who you expect to use it.

                          • 10. Re: Can APEX uniquely identify a PC (like mac address) ?
                            bhatt t

                            Hi fac586,

                             

                            Actually, I have to develop a application, which will count/show how much Vitamins,Minerals,Proteins etc. have in a specific diet like 11gms cheese, 100ml oil etc. This application is meant for PG students of Food & Nutrition department.

                             

                            As APEX is a web based application like Amazon.com, so don't know how can I control my end user regarding payments, like if give access permission to one student for my application by giving him login/password, he can also forward this login/password to other students, who will access my application without giving me any payment.

                             

                            Previously, I used traditionally method, like I gave Installation CD (in VB/ACCESS) alongwith a hardware lock to install on his PC, and it could not further installed on other PC, so this way I controlled my users, who cannot misuse/install my application on other PCs. 

                             

                            So, how can I control to access my application & what payment method can be adopted from the students as per their usage ?

                             

                            Thanks with Regards.

                            Bhatt T.

                            • 11. Re: Can APEX uniquely identify a PC (like mac address) ?
                              Pete Mahon

                              Hi Bhatt,

                               

                              APEX can record the IP address and you could restrict a user from logging on twice at the same time from two different locations, or even from one location (i.e. university proxy server would expose only 1 IP address). Beyond this, your licence terms should cover the sharing of credentials.

                               

                              For payment, you can hook into a plethora of online systems, not least paypal etc. I don't think that part of your question is relevant to this forum, however.

                               

                              Cheers, Pete.

                              1 person found this helpful
                              • 12. Re: Can APEX uniquely identify a PC (like mac address) ?
                                Joni Vandenberghe

                                You can still use the same method, you can retrieve client info with that method if you read the documentation, such as the IP for example. But IP's can change, perhaps you can log IP's, if they change to often you can decide to take action, but I would not hardcode that into your code.

                                 

                                Regards,

                                Joni

                                1 person found this helpful