SlideShare ist ein Scribd-Unternehmen logo
1 von 96
Downloaden Sie, um offline zu lesen
Enabling the P4 Administrator
Via Mobile Device
Xavier Galvez
Senior Engineer
Advanced Micro Devices, Inc.

© 2011
THE PROBLEM




   •  Granting access is a 24/7 operation
THE PROBLEM




   •  Granting access is a 24/7 operation
   •  Engineering teams span across the world
THE PROBLEM




   •  Granting access is a 24/7 operation
   •  Engineering teams span across the world
   •  Access to areas is tightly regulated
THE PROBLEM




   •  Granting access is a 24/7 operation
   •  Engineering teams span across the world
   •  Access to areas is tightly regulated
   •  A single team is authorized to give access
THE PROBLEM




   •  Granting access is a 24/7 operation
   •  Engineering teams span across the world
   •  Access to areas is tightly regulated
   •  A single team is authorized to give access
   •  Be able to perform this task whenever and wherever
THE SOLUTION




   •  Leverage the mobile device
THE SOLUTION




   •  Leverage the mobile device
   •  Create an interface accessible by web browser
THE SOLUTION




   •  Leverage the mobile device
   •  Create an interface accessible by web browser
   •  Use the browser on the mobile device
THE SOLUTION




   •  Leverage the mobile device
   •  Create an interface accessible by web browser
   •  Use the browser on the mobile device
   •  Do it securely
CONTEXT



   This presentation touches on:
   •  Breadth of the organization
   •  Permissions in the protection table
   •  Centralized authorization process
CONTEXT



   This presentation touches on:
   •  Breadth of the organization
   •  Permissions in the protection table
   •  Centralized authorization process

   Then I discuss:
   •  Evolution of the solution
   •  Simplicity
   •  Where to go from here
GLOBAL SCOPE
GLOBAL SCOPE
GLOBAL SCOPE
GLOBAL SCOPE
GLOBAL SCOPE
GLOBAL SCOPE
GLOBAL SCOPE
GLOBAL SCOPE
GLOBAL SCOPE
GLOBAL SCOPE
GLOBAL SCOPE
GLOBAL SCOPE
GLOBAL SCOPE
GLOBAL SCOPE




     grp_northamerica
GLOBAL SCOPE




     grp_northamerica   grp_israel
GLOBAL SCOPE




     grp_northamerica   grp_israel   grp_india
GLOBAL SCOPE




     grp_northamerica   grp_israel   grp_india   grp_shanghai
DEPOT STRUCTURE & PERMISSIONS




                   depot



       stg         main         rel
DEPOT STRUCTURE & PERMISSIONS




                   depot



       stg         main         rel
DEPOT STRUCTURE & PERMISSIONS

r ACC_rel //depot/rel/...
w bm_rel //depot/rel/...
w ACC_rel //depot/rel/8.10/...
r ACC_rel -//depot/rel/*/acc.txt
w REG_rel //depot/rel/*/acc.txt
r ACC_main //depot/main/...
w bm_merc //depot/main/merc/...               depot
r ACC_merc //depot/main/merc/...
w ACC_merc //depot/stg/merc/src/...
w ACC_merc //depot/stg/merc/doc/...
w nda_merc //depot/stg/merc/nda/...
w reg_merc //depot/stg/merc/acc.txt
w bm_venus //depot/main/venus/...
                                        stg   main    rel
r ACC_venus //depot/main/venus/...
w ACC_venus //depot/stg/venus/src/...
w ACC_venus //depot/stg/venus/doc/...
w nda_venus //depot/stg/venus/nda/...
w reg_venus //depot/stg/venus/acc.txt
s grp_admins //...
DEPOT STRUCTURE & PERMISSIONS

r ACC_rel //depot/rel/...
w bm_rel //depot/rel/...
w ACC_rel //depot/rel/8.10/...
                                        stg    main   rel
r ACC_rel -//depot/rel/*/acc.txt
w REG_rel //depot/rel/*/acc.txt
r ACC_main //depot/main/...             merc
w bm_merc //depot/main/merc/...
r ACC_merc //depot/main/merc/...
w ACC_merc //depot/stg/merc/src/...
w ACC_merc //depot/stg/merc/doc/...
w nda_merc //depot/stg/merc/nda/...
w reg_merc //depot/stg/merc/acc.txt
w bm_venus //depot/main/venus/...
r ACC_venus //depot/main/venus/...
w ACC_venus //depot/stg/venus/src/...
w ACC_venus //depot/stg/venus/doc/...
w nda_venus //depot/stg/venus/nda/...
w reg_venus //depot/stg/venus/acc.txt
s grp_admins //...
DEPOT STRUCTURE & PERMISSIONS

r ACC_rel //depot/rel/...
w bm_rel //depot/rel/...
w ACC_rel //depot/rel/8.10/...
                                        stg     main   rel
r ACC_rel -//depot/rel/*/acc.txt
w REG_rel //depot/rel/*/acc.txt
r ACC_main //depot/main/...             merc
w bm_merc //depot/main/merc/...
r ACC_merc //depot/main/merc/...
                                          src
w ACC_merc //depot/stg/merc/src/...
w ACC_merc //depot/stg/merc/doc/...
w nda_merc //depot/stg/merc/nda/...       doc
w reg_merc //depot/stg/merc/acc.txt
w bm_venus //depot/main/venus/...
r ACC_venus //depot/main/venus/...
w ACC_venus //depot/stg/venus/src/...
w ACC_venus //depot/stg/venus/doc/...
w nda_venus //depot/stg/venus/nda/...
w reg_venus //depot/stg/venus/acc.txt
s grp_admins //...
DEPOT STRUCTURE & PERMISSIONS

r ACC_rel //depot/rel/...
w bm_rel //depot/rel/...
w ACC_rel //depot/rel/8.10/...
                                        stg     main    rel
r ACC_rel -//depot/rel/*/acc.txt
w REG_rel //depot/rel/*/acc.txt
r ACC_main //depot/main/...             merc     merc
r ACC_merc //depot/main/merc/...
w bm_merc //depot/main/merc/...
                                          src
w ACC_merc //depot/stg/merc/src/...
w ACC_merc //depot/stg/merc/doc/...
w nda_merc //depot/stg/merc/nda/...       doc
w reg_merc //depot/stg/merc/acc.txt
w bm_venus //depot/main/venus/...
r ACC_venus //depot/main/venus/...
w ACC_venus //depot/stg/venus/src/...
w ACC_venus //depot/stg/venus/doc/...
w nda_venus //depot/stg/venus/nda/...
w reg_venus //depot/stg/venus/acc.txt
s grp_admins //...
DEPOT STRUCTURE & PERMISSIONS

r ACC_rel //depot/rel/...
w bm_rel //depot/rel/...
w ACC_rel //depot/rel/8.10/...
                                        stg     main    rel
r ACC_rel -//depot/rel/*/acc.txt
w REG_rel //depot/rel/*/acc.txt
r ACC_main //depot/main/...             merc     merc
r ACC_merc //depot/main/merc/...
w bm_merc //depot/main/merc/...
                                          src
w ACC_merc //depot/stg/merc/src/...
w ACC_merc //depot/stg/merc/doc/...
w nda_merc //depot/stg/merc/nda/...       doc
w reg_merc //depot/stg/merc/acc.txt
w bm_venus //depot/main/venus/...
r ACC_venus //depot/main/venus/...      venus
w ACC_venus //depot/stg/venus/src/...
w ACC_venus //depot/stg/venus/doc/...     src
w nda_venus //depot/stg/venus/nda/...
w reg_venus //depot/stg/venus/acc.txt     doc
s grp_admins //...
DEPOT STRUCTURE & PERMISSIONS

r ACC_rel //depot/rel/...
w bm_rel //depot/rel/...
w ACC_rel //depot/rel/8.10/...
                                        stg     main    rel
r ACC_rel -//depot/rel/*/acc.txt
w REG_rel //depot/rel/*/acc.txt
r ACC_main //depot/main/...             merc     merc
r ACC_merc //depot/main/merc/...
w bm_merc //depot/main/merc/...
                                          src
w ACC_merc //depot/stg/merc/src/...             venus
w ACC_merc //depot/stg/merc/doc/...
w nda_merc //depot/stg/merc/nda/...       doc
w reg_merc //depot/stg/merc/acc.txt
r ACC_venus //depot/main/venus/...
w bm_venus //depot/main/venus/...       venus
w ACC_venus //depot/stg/venus/src/...
w ACC_venus //depot/stg/venus/doc/...     src
w nda_venus //depot/stg/venus/nda/...
w reg_venus //depot/stg/venus/acc.txt     doc
s grp_admins //...
DEPOT STRUCTURE & PERMISSIONS

r ACC_rel //depot/rel/...
w bm_rel //depot/rel/...
w ACC_rel //depot/rel/8.10/...
                                        stg     main    rel
r ACC_rel -//depot/rel/*/acc.txt
w REG_rel //depot/rel/*/acc.txt
r ACC_main //depot/main/...             merc     merc
r ACC_merc //depot/main/merc/...
w bm_merc //depot/main/merc/...
                                          src
w ACC_merc //depot/stg/merc/src/...             venus
w ACC_merc //depot/stg/merc/doc/...
w nda_merc //depot/stg/merc/nda/...       doc
w reg_merc //depot/stg/merc/acc.txt
r ACC_venus //depot/main/venus/...
w bm_venus //depot/main/venus/...       venus
w ACC_venus //depot/stg/venus/src/...
w ACC_venus //depot/stg/venus/doc/...     src
w nda_venus //depot/stg/venus/nda/...
w reg_venus //depot/stg/venus/acc.txt     doc
s grp_admins //...
DEPOT STRUCTURE & PERMISSIONS

r ACC_rel //depot/rel/...
w bm_rel //depot/rel/...
w ACC_rel //depot/rel/8.10/...
                                        stg     main    rel
r ACC_rel -//depot/rel/*/acc.txt
w REG_rel //depot/rel/*/acc.txt
r ACC_main //depot/main/...             merc     merc   8.10
r ACC_merc //depot/main/merc/...
w bm_merc //depot/main/merc/...
                                          src            merc
w ACC_merc //depot/stg/merc/src/...             venus
w ACC_merc //depot/stg/merc/doc/...
w nda_merc //depot/stg/merc/nda/...       doc            venus
w reg_merc //depot/stg/merc/acc.txt
r ACC_venus //depot/main/venus/...
w bm_venus //depot/main/venus/...       venus
w ACC_venus //depot/stg/venus/src/...
w ACC_venus //depot/stg/venus/doc/...     src
w nda_venus //depot/stg/venus/nda/...
w reg_venus //depot/stg/venus/acc.txt     doc
s grp_admins //...
DEPOT STRUCTURE & PERMISSIONS

r ACC_rel //depot/rel/...
w bm_rel //depot/rel/...
w ACC_rel //depot/rel/8.10/...
                                        stg     main    rel
r ACC_rel -//depot/rel/*/acc.txt
w REG_rel //depot/rel/*/acc.txt
r ACC_main //depot/main/...             merc     merc   8.10
r ACC_merc //depot/main/merc/...
w bm_merc //depot/main/merc/...
                                          src            merc
w ACC_merc //depot/stg/merc/src/...             venus
w ACC_merc //depot/stg/merc/doc/...
w nda_merc //depot/stg/merc/nda/...       doc            venus
w reg_merc //depot/stg/merc/acc.txt
r ACC_venus //depot/main/venus/...
w bm_venus //depot/main/venus/...       venus
w ACC_venus //depot/stg/venus/src/...
w ACC_venus //depot/stg/venus/doc/...     src
w nda_venus //depot/stg/venus/nda/...
w reg_venus //depot/stg/venus/acc.txt     doc
s grp_admins //...
DEPOT STRUCTURE & PERMISSIONS

r ACC_rel //depot/rel/...
w bm_rel //depot/rel/...
w ACC_rel //depot/rel/8.10/...
                                        stg     main    rel
r ACC_rel -//depot/rel/*/acc.txt
w REG_rel //depot/rel/*/acc.txt
r ACC_main //depot/main/...             merc     merc   8.10
r ACC_merc //depot/main/merc/...
w bm_merc //depot/main/merc/...
                                          src            merc
w ACC_merc //depot/stg/merc/src/...             venus
w ACC_merc //depot/stg/merc/doc/...
w nda_merc //depot/stg/merc/nda/...       doc            venus
w reg_merc //depot/stg/merc/acc.txt
r ACC_venus //depot/main/venus/...
w bm_venus //depot/main/venus/...       venus
w ACC_venus //depot/stg/venus/src/...
w ACC_venus //depot/stg/venus/doc/...     src
w nda_venus //depot/stg/venus/nda/...
w reg_venus //depot/stg/venus/acc.txt     doc
s grp_admins //...
DEPOT STRUCTURE & PERMISSIONS

r ACC_rel //depot/rel/...
w bm_rel //depot/rel/...
w ACC_rel //depot/rel/8.10/...
                                        stg     main    rel
r ACC_rel -//depot/rel/*/acc.txt
w REG_rel //depot/rel/*/acc.txt
r ACC_main //depot/main/...             merc     merc   8.10
r ACC_merc //depot/main/merc/...
w bm_merc //depot/main/merc/...
                                          src            merc
w ACC_merc //depot/stg/merc/src/...             venus
w ACC_merc //depot/stg/merc/doc/...
w nda_merc //depot/stg/merc/nda/...       doc            venus
w reg_merc //depot/stg/merc/acc.txt
r ACC_venus //depot/main/venus/...
w bm_venus //depot/main/venus/...       venus
w ACC_venus //depot/stg/venus/src/...
w ACC_venus //depot/stg/venus/doc/...     src
w nda_venus //depot/stg/venus/nda/...
w reg_venus //depot/stg/venus/acc.txt     doc
s grp_admins //...
DEPOT STRUCTURE & PERMISSIONS

r ACC_rel //depot/rel/...
w bm_rel //depot/rel/...
w ACC_rel //depot/rel/8.10/...
                                        stg     main    rel
r ACC_rel -//depot/rel/*/acc.txt
w REG_rel //depot/rel/*/acc.txt
r ACC_main //depot/main/...             merc     merc   8.10
r ACC_merc //depot/main/merc/...
w bm_merc //depot/main/merc/...
                                          src            merc
w ACC_merc //depot/stg/merc/src/...             venus
w ACC_merc //depot/stg/merc/doc/...
w nda_merc //depot/stg/merc/nda/...       doc            venus
w reg_merc //depot/stg/merc/acc.txt
r ACC_venus //depot/main/venus/...
w bm_venus //depot/main/venus/...       venus
w ACC_venus //depot/stg/venus/src/...
w ACC_venus //depot/stg/venus/doc/...     src
w nda_venus //depot/stg/venus/nda/...
w reg_venus //depot/stg/venus/acc.txt     doc
s grp_admins //...
DEPOT STRUCTURE & PERMISSIONS

r ACC_rel //depot/rel/...
w bm_rel //depot/rel/...
w ACC_rel //depot/rel/8.10/...
                                        stg      main    rel
r ACC_rel -//depot/rel/*/acc.txt
w REG_rel //depot/rel/*/acc.txt
r ACC_main //depot/main/...             merc      merc   8.10
r ACC_merc //depot/main/merc/...
w bm_merc //depot/main/merc/...
                                          src             merc
w ACC_merc //depot/stg/merc/src/...              venus
w ACC_merc //depot/stg/merc/doc/...
w nda_merc //depot/stg/merc/nda/...       doc
                                           nda            venus
w reg_merc //depot/stg/merc/acc.txt
r ACC_venus //depot/main/venus/...
w bm_venus //depot/main/venus/...       venus
w ACC_venus //depot/stg/venus/src/...
w ACC_venus //depot/stg/venus/doc/...     src
w nda_venus //depot/stg/venus/nda/...
w reg_venus //depot/stg/venus/acc.txt     doc
                                           nda
s grp_admins //...
DEPOT STRUCTURE & PERMISSIONS

r ACC_rel //depot/rel/...
w bm_rel //depot/rel/...
w ACC_rel //depot/rel/8.10/...
                                        stg      main    rel
r ACC_rel -//depot/rel/*/acc.txt
w REG_rel //depot/rel/*/acc.txt
r ACC_main //depot/main/...             merc      merc   8.10
r ACC_merc //depot/main/merc/...
w bm_merc //depot/main/merc/...
                                          src             merc
w ACC_merc //depot/stg/merc/src/...              venus
w ACC_merc //depot/stg/merc/doc/...
w nda_merc //depot/stg/merc/nda/...       doc
                                           nda            venus
w reg_merc //depot/stg/merc/acc.txt
r ACC_venus //depot/main/venus/...
w bm_venus //depot/main/venus/...       venus
w ACC_venus //depot/stg/venus/src/...
w ACC_venus //depot/stg/venus/doc/...     src
w nda_venus //depot/stg/venus/nda/...
w reg_venus //depot/stg/venus/acc.txt     doc
                                           nda
s grp_admins //...
PERMISSIONS: HIGH-LEVEL TEAMS

r ACC_rel //depot/rel/...
                                          bm_rel
w bm_rel //depot/rel/...
w ACC_rel //depot/rel/8.10/...
r ACC_rel -//depot/rel/*/acc.txt         bm_merc
w REG_rel //depot/rel/*/acc.txt
r ACC_main //depot/main/...             nda_merc
r ACC_merc //depot/main/merc/...
w bm_merc //depot/main/merc/...          reg_merc
w ACC_merc //depot/stg/merc/src/...
w ACC_merc //depot/stg/merc/doc/...     bm_venus
w nda_merc //depot/stg/merc/nda/...
w reg_merc //depot/stg/merc/acc.txt
                                        nda_venus
r ACC_venus //depot/main/venus/...
w bm_venus //depot/main/venus/...
w ACC_venus //depot/stg/venus/src/...   reg_venus
w ACC_venus //depot/stg/venus/doc/...
w nda_venus //depot/stg/venus/nda/...   grp_admins
w reg_venus //depot/stg/venus/acc.txt
s grp_admins //...
PERMISSIONS: HIGH-LEVEL TEAM EXAMPLES

r ACC_rel //depot/rel/...
w bm_rel //depot/rel/...
w ACC_rel //depot/rel/8.10/...
r ACC_rel -//depot/rel/*/acc.txt
w REG_rel //depot/rel/*/acc.txt
r ACC_main //depot/main/...
r ACC_merc //depot/main/merc/...
w bm_merc //depot/main/merc/...
w ACC_merc //depot/stg/merc/src/...
w ACC_merc //depot/stg/merc/doc/...     bm_venus
w nda_merc //depot/stg/merc/nda/...
w reg_merc //depot/stg/merc/acc.txt
r ACC_venus //depot/main/venus/...
w bm_venus //depot/main/venus/...
w ACC_venus //depot/stg/venus/src/...
w ACC_venus //depot/stg/venus/doc/...
w nda_venus //depot/stg/venus/nda/...   grp_admins
w reg_venus //depot/stg/venus/acc.txt
s grp_admins //...
PERMISSIONS: ACCESS GROUPS

r ACC_rel //depot/rel/...
                                         ACC_rel
w bm_rel //depot/rel/...
w ACC_rel //depot/rel/8.10/...
r ACC_rel -//depot/rel/*/acc.txt         REG_rel
w REG_rel //depot/rel/*/acc.txt
r ACC_main //depot/main/...             ACC_main
r ACC_merc //depot/main/merc/...
w bm_merc //depot/main/merc/...         ACC_merc
w ACC_merc //depot/stg/merc/src/...
w ACC_merc //depot/stg/merc/doc/...     ACC_venus
w nda_merc //depot/stg/merc/nda/...
w reg_merc //depot/stg/merc/acc.txt
r ACC_venus //depot/main/venus/...
w bm_venus //depot/main/venus/...
w ACC_venus //depot/stg/venus/src/...
w ACC_venus //depot/stg/venus/doc/...
w nda_venus //depot/stg/venus/nda/...
w reg_venus //depot/stg/venus/acc.txt
s grp_admins //...
PERMISSIONS: ACCESS GROUP EXAMPLE

r ACC_rel //depot/rel/...
                                         ACC_rel
w bm_rel //depot/rel/...
w ACC_rel //depot/rel/8.10/...
r ACC_rel -//depot/rel/*/acc.txt
w REG_rel //depot/rel/*/acc.txt
r ACC_main //depot/main/...             ACC_main
r ACC_merc //depot/main/merc/...
w bm_merc //depot/main/merc/...         ACC_merc
w ACC_merc //depot/stg/merc/src/...
w ACC_merc //depot/stg/merc/doc/...
w nda_merc //depot/stg/merc/nda/...
w reg_merc //depot/stg/merc/acc.txt
r ACC_venus //depot/main/venus/...
w bm_venus //depot/main/venus/...
                                        grp_shanghai
w ACC_venus //depot/stg/venus/src/...
w ACC_venus //depot/stg/venus/doc/...
w nda_venus //depot/stg/venus/nda/...
w reg_venus //depot/stg/venus/acc.txt
s grp_admins //...
PERMISSIONS: ACCESS GROUP EXAMPLE

r ACC_rel //depot/rel/...
                                           ACC_rel
w bm_rel //depot/rel/...
w ACC_rel //depot/rel/8.10/...
r ACC_rel -//depot/rel/*/acc.txt
w REG_rel //depot/rel/*/acc.txt
r ACC_main //depot/main/...               ACC_main
r ACC_merc //depot/main/merc/...
w bm_merc //depot/main/merc/...           ACC_merc
w ACC_merc //depot/stg/merc/src/...
w ACC_merc //depot/stg/merc/doc/...      ACC_venus
w nda_merc //depot/stg/merc/nda/...
w reg_merc //depot/stg/merc/acc.txt
r ACC_venus //depot/main/venus/...
w bm_venus //depot/main/venus/...
                                        grp_northamerica
w ACC_venus //depot/stg/venus/src/...
w ACC_venus //depot/stg/venus/doc/...
w nda_venus //depot/stg/venus/nda/...
w reg_venus //depot/stg/venus/acc.txt
s grp_admins //...
PERMISSIONS: COMBINATION EXAMPLE

r ACC_rel //depot/rel/...
                                           ACC_rel
w bm_rel //depot/rel/...
w ACC_rel //depot/rel/8.10/...
r ACC_rel -//depot/rel/*/acc.txt
w REG_rel //depot/rel/*/acc.txt
r ACC_main //depot/main/...               ACC_main
r ACC_merc //depot/main/merc/...
w bm_merc //depot/main/merc/...           ACC_merc
w ACC_merc //depot/stg/merc/src/...
w ACC_merc //depot/stg/merc/doc/...      ACC_venus
w nda_merc //depot/stg/merc/nda/...
w reg_merc //depot/stg/merc/acc.txt
                                          bm_venus
r ACC_venus //depot/main/venus/...
w bm_venus //depot/main/venus/...
                                        grp_northamerica
w ACC_venus //depot/stg/venus/src/...
w ACC_venus //depot/stg/venus/doc/...
w nda_venus //depot/stg/venus/nda/...
w reg_venus //depot/stg/venus/acc.txt
s grp_admins //...
CREATING ACCOUNTS VIA P4 USER
CREATING ACCOUNTS VIA P4 USER
CREATING ACCOUNTS VIA NEWUSER.EXE
CREATING ACCOUNTS VIA NEWUSER.EXE
CREATING ACCOUNTS
CREATING ACCOUNTS
CREATING ACCOUNTS
CREATING ACCOUNTS
CREATING ACCOUNTS
PROBLEMS WITH BINARIES




   •  Newer versions need to be recompiled.
PROBLEMS WITH BINARIES




   •  Newer versions need to be recompiled.
   •  Deployment.
CREATING ACCOUNTS
ADVANTAGES WITH WEB APPS




   •  Newer versions available right away.
ADVANTAGES WITH WEB APPS




   •  Newer versions available right away.
   •  Experimental versions can be easily tested.
ADVANTAGES WITH WEB APPS




   •  Newer versions available right away.
   •  Experimental versions can be easily tested.
   •  Real-time validation on inputs.
ADVANTAGES WITH WEB APPS




   •  Newer versions available right away.
   •  Experimental versions can be easily tested.
   •  Real-time validation on inputs.
   •  OS-independent.
LEVERAGE EXISTING RESOURCE #1: WEB SERVER
LEVERAGE EXISTING RESOURCE #1: WEB SERVER
LEVERAGE EXISTING RESOURCE #1: WEB SERVER
CREATING ACCOUNTS VIA WEB APP
CREATING ACCOUNTS VIA WEB APP
CREATING ACCOUNTS VIA WEB APP
CREATING ACCOUNTS VIA WEB APP
CREATING ACCOUNTS VIA WEB APP
CREATING ACCOUNTS VIA WEB APP
CREATING ACCOUNTS VIA WEB APP
LEVERAGE EXISTING RESOURCE #2: BLACKBERRY




                                      internet

                   wireless network




                  BES                   firewall


                                           AMD
LEVERAGE EXISTING RESOURCE #2: BLACKBERRY




                                      internet

                   wireless network




                  BES                   firewall


                                           AMD
LEVERAGE EXISTING RESOURCE #2: BLACKBERRY
LEVERAGE EXISTING RESOURCE #3: iOS




                                      internet

                   wireless network




                  secure                firewall
                   VPN

                                           AMD
LEVERAGE EXISTING RESOURCE #3: iOS
SECURITY


   Wireless Solutions
   •  BlackBerry Enterprise Solution for Blackberries
   •  Secure VPN for iOS devices
SECURITY


   Wireless Solutions
   •  BlackBerry Enterprise Solution for Blackberries
   •  Secure VPN for iOS devices

   HTTP is not secure, use HTTPS!
   •  Encrypts the HTTP message prior to transmission
   •  Decrypts the message upon arrival
   •  Requires the use of CA certificates
SECURITY


   Wireless Solutions
   •  BlackBerry Enterprise Solution for Blackberries
   •  Secure VPN for iOS devices

   HTTP is not secure, use HTTPS!
   •  Encrypts the HTTP message prior to transmission
   •  Decrypts the message upon arrival
   •  Requires the use of CA certificates

   User Authentication and Identification
   •  REMOTE_USER environment variable
REDUCING RISK



   Keep the location of the web page unknown
   •  Only known to Perforce admins
REDUCING RISK



   Keep the location of the web page unknown
   •  Only known to Perforce admins

   Limit what can be done on the web page
   •  Create a new user account
   •  Display information from p4 protects and p4 groups
   •  Add an existing user to currently existing groups
   •  Remove the user from a group
   •  Reset the password of an existing user
WHAT NEXT?



   Server-side APIs
   •  P4Java, P4Perl, P4Ruby, P4Python, P4PHP
   •  ASP.NET with Perforce C/C++ API
WHAT NEXT?



   Server-side APIs
   •  P4Java, P4Perl, P4Ruby, P4Python, P4PHP
   •  ASP.NET with Perforce C/C++ API

   Client-side Technologies
   •  jQuery, jQuery Mobile, HTML5
WHAT NEXT?



   Server-side APIs
   •  P4Java, P4Perl, P4Ruby, P4Python, P4PHP
   •  ASP.NET with Perforce C/C++ API

   Client-side Technologies
   •  jQuery, jQuery Mobile, HTML5

   More Features!
   •  Monitor and restart servers
   •  Most-used commands can be called
CONCLUSION



   The result:
   •  Simple mechanism
   •  Took advantage of existing resources
   •  Latest web technologies were not necessary
   •  Quick development, fast deployment
CONCLUSION



   The result:
   •  Simple mechanism
   •  Took advantage of existing resources
   •  Latest web technologies were not necessary
   •  Quick development, fast deployment

   The advantages:
   •  Web page + mobile device allows rich feature set
   •  Write once, run on all
   •  Feel at home with the same interface
   •  Not just work hard, but work SMART
CHALLENGE
Questions?
Thank you!

xavier.galvez@amd.com
ICON CREDITS




   •  http://www.iconshock.com/
   •  http://fasticon.com/
   •  http://johnfreeborn.com/
   •  http://www.deleket.com/
   •  http://www.customicondesign.com/
   •  http://www.visualpharm.com/
   •  http://www.icons-land.com/
   •  http://3dlb.com/

Weitere ähnliche Inhalte

Andere mochten auch

Proyectos tecnológicos.
Proyectos tecnológicos.Proyectos tecnológicos.
Proyectos tecnológicos.
Letireyes1992
 
Que es evaluacion
Que es evaluacionQue es evaluacion
Que es evaluacion
jakileo36
 
Composition and pen techniques
Composition and pen techniquesComposition and pen techniques
Composition and pen techniques
Riverwood HS
 
Negro bembon.coral eufonia de getafe
Negro bembon.coral eufonia de getafeNegro bembon.coral eufonia de getafe
Negro bembon.coral eufonia de getafe
Justino Garcia
 
Apache服务器配置全攻略
Apache服务器配置全攻略Apache服务器配置全攻略
Apache服务器配置全攻略
Yiwei Ma
 
As 12 cidades mais populosas do m
As 12 cidades mais populosas do m As 12 cidades mais populosas do m
As 12 cidades mais populosas do m
Aldo Cioffi
 
Porque amamos os animais
Porque amamos os animaisPorque amamos os animais
Porque amamos os animais
Aldo Cioffi
 

Andere mochten auch (20)

І. Ася Паплаўская “Сучбелліт з Ладай Алейнік: “...Бясконцыя прэтэнзіі ад пісь...
І. Ася Паплаўская “Сучбелліт з Ладай Алейнік: “...Бясконцыя прэтэнзіі ад пісь...І. Ася Паплаўская “Сучбелліт з Ладай Алейнік: “...Бясконцыя прэтэнзіі ад пісь...
І. Ася Паплаўская “Сучбелліт з Ладай Алейнік: “...Бясконцыя прэтэнзіі ад пісь...
 
Jornada ambientalitzacio de les flotes de vehicles - Autogas Repsol
Jornada ambientalitzacio de les flotes de vehicles - Autogas RepsolJornada ambientalitzacio de les flotes de vehicles - Autogas Repsol
Jornada ambientalitzacio de les flotes de vehicles - Autogas Repsol
 
Geralnews 18 abr
Geralnews 18 abrGeralnews 18 abr
Geralnews 18 abr
 
Proyectos tecnológicos.
Proyectos tecnológicos.Proyectos tecnológicos.
Proyectos tecnológicos.
 
Que es evaluacion
Que es evaluacionQue es evaluacion
Que es evaluacion
 
Kronika 29.03.2012
Kronika   29.03.2012Kronika   29.03.2012
Kronika 29.03.2012
 
DeMolay Internacional - Documentos sucessão (inglês)
DeMolay Internacional - Documentos sucessão (inglês)DeMolay Internacional - Documentos sucessão (inglês)
DeMolay Internacional - Documentos sucessão (inglês)
 
Currículum deportivo javi blanco
Currículum deportivo javi blancoCurrículum deportivo javi blanco
Currículum deportivo javi blanco
 
Ple 25 de maig: Espais suport educatiu
Ple 25 de maig: Espais suport educatiuPle 25 de maig: Espais suport educatiu
Ple 25 de maig: Espais suport educatiu
 
Composition and pen techniques
Composition and pen techniquesComposition and pen techniques
Composition and pen techniques
 
Pla municipal per a la igualtat d’oportunitats real i efectiva entre dones i ...
Pla municipal per a la igualtat d’oportunitats real i efectiva entre dones i ...Pla municipal per a la igualtat d’oportunitats real i efectiva entre dones i ...
Pla municipal per a la igualtat d’oportunitats real i efectiva entre dones i ...
 
A mair bronca
A mair broncaA mair bronca
A mair bronca
 
Negro bembon.coral eufonia de getafe
Negro bembon.coral eufonia de getafeNegro bembon.coral eufonia de getafe
Negro bembon.coral eufonia de getafe
 
Desenhos mãe 1.4
Desenhos mãe 1.4 Desenhos mãe 1.4
Desenhos mãe 1.4
 
Apache服务器配置全攻略
Apache服务器配置全攻略Apache服务器配置全攻略
Apache服务器配置全攻略
 
Nb sep53
Nb sep53Nb sep53
Nb sep53
 
O sorriso (s)
O sorriso (s)O sorriso (s)
O sorriso (s)
 
Modelo de calidad acreditacion universitaria
Modelo de calidad acreditacion universitariaModelo de calidad acreditacion universitaria
Modelo de calidad acreditacion universitaria
 
As 12 cidades mais populosas do m
As 12 cidades mais populosas do m As 12 cidades mais populosas do m
As 12 cidades mais populosas do m
 
Porque amamos os animais
Porque amamos os animaisPorque amamos os animais
Porque amamos os animais
 

Ähnlich wie Enabling the Perforce Administrator via Mobile Device

Marko Gargenta_Remixing android
Marko Gargenta_Remixing androidMarko Gargenta_Remixing android
Marko Gargenta_Remixing android
Droidcon Berlin
 

Ähnlich wie Enabling the Perforce Administrator via Mobile Device (20)

Marko Gargenta_Remixing android
Marko Gargenta_Remixing androidMarko Gargenta_Remixing android
Marko Gargenta_Remixing android
 
clang-intro
clang-introclang-intro
clang-intro
 
DCEU 18: Tips and Tricks of the Docker Captains
DCEU 18: Tips and Tricks of the Docker CaptainsDCEU 18: Tips and Tricks of the Docker Captains
DCEU 18: Tips and Tricks of the Docker Captains
 
RESTFul IDEAS
RESTFul IDEASRESTFul IDEAS
RESTFul IDEAS
 
Hand-on Resources II: Extending SCMSWeb
Hand-on Resources II: Extending SCMSWebHand-on Resources II: Extending SCMSWeb
Hand-on Resources II: Extending SCMSWeb
 
JDO 2019: Kubernetes logging techniques with a touch of LogSense - Marcin Stożek
JDO 2019: Kubernetes logging techniques with a touch of LogSense - Marcin StożekJDO 2019: Kubernetes logging techniques with a touch of LogSense - Marcin Stożek
JDO 2019: Kubernetes logging techniques with a touch of LogSense - Marcin Stożek
 
Noah Zoschke at Waza 2013: Heroku Secrets
Noah Zoschke at Waza 2013: Heroku SecretsNoah Zoschke at Waza 2013: Heroku Secrets
Noah Zoschke at Waza 2013: Heroku Secrets
 
Deploy Rails Application by Capistrano
Deploy Rails Application by CapistranoDeploy Rails Application by Capistrano
Deploy Rails Application by Capistrano
 
Cadence flow
Cadence flowCadence flow
Cadence flow
 
Dev-Jam 2019 - Container & OpenNMS
Dev-Jam 2019 - Container & OpenNMSDev-Jam 2019 - Container & OpenNMS
Dev-Jam 2019 - Container & OpenNMS
 
Watch Me Install Alfresco
Watch Me Install AlfrescoWatch Me Install Alfresco
Watch Me Install Alfresco
 
Optaros Surf Code Camp Walkthrough 2
Optaros Surf Code Camp Walkthrough 2Optaros Surf Code Camp Walkthrough 2
Optaros Surf Code Camp Walkthrough 2
 
PuppetConf 2016: The Challenges with Container Configuration – David Lutterko...
PuppetConf 2016: The Challenges with Container Configuration – David Lutterko...PuppetConf 2016: The Challenges with Container Configuration – David Lutterko...
PuppetConf 2016: The Challenges with Container Configuration – David Lutterko...
 
Challenges of container configuration
Challenges of container configurationChallenges of container configuration
Challenges of container configuration
 
Ae backup
Ae backupAe backup
Ae backup
 
Sankula
SankulaSankula
Sankula
 
DCSF19 Dockerfile Best Practices
DCSF19 Dockerfile Best PracticesDCSF19 Dockerfile Best Practices
DCSF19 Dockerfile Best Practices
 
Securing Prometheus exporters using HashiCorp Vault
Securing Prometheus exporters using HashiCorp VaultSecuring Prometheus exporters using HashiCorp Vault
Securing Prometheus exporters using HashiCorp Vault
 
Real World Experience of Running Docker in Development and Production
Real World Experience of Running Docker in Development and ProductionReal World Experience of Running Docker in Development and Production
Real World Experience of Running Docker in Development and Production
 
Lessons Learned in Automating Compliance for Containers
Lessons Learned in Automating Compliance for ContainersLessons Learned in Automating Compliance for Containers
Lessons Learned in Automating Compliance for Containers
 

Mehr von Perforce

Mehr von Perforce (20)

How to Organize Game Developers With Different Planning Needs
How to Organize Game Developers With Different Planning NeedsHow to Organize Game Developers With Different Planning Needs
How to Organize Game Developers With Different Planning Needs
 
Regulatory Traceability: How to Maintain Compliance, Quality, and Cost Effic...
Regulatory Traceability:  How to Maintain Compliance, Quality, and Cost Effic...Regulatory Traceability:  How to Maintain Compliance, Quality, and Cost Effic...
Regulatory Traceability: How to Maintain Compliance, Quality, and Cost Effic...
 
Efficient Security Development and Testing Using Dynamic and Static Code Anal...
Efficient Security Development and Testing Using Dynamic and Static Code Anal...Efficient Security Development and Testing Using Dynamic and Static Code Anal...
Efficient Security Development and Testing Using Dynamic and Static Code Anal...
 
Understanding Compliant Workflow Enforcement SOPs
Understanding Compliant Workflow Enforcement SOPsUnderstanding Compliant Workflow Enforcement SOPs
Understanding Compliant Workflow Enforcement SOPs
 
Branching Out: How To Automate Your Development Process
Branching Out: How To Automate Your Development ProcessBranching Out: How To Automate Your Development Process
Branching Out: How To Automate Your Development Process
 
How to Do Code Reviews at Massive Scale For DevOps
How to Do Code Reviews at Massive Scale For DevOpsHow to Do Code Reviews at Massive Scale For DevOps
How to Do Code Reviews at Massive Scale For DevOps
 
How to Spark Joy In Your Product Backlog
How to Spark Joy In Your Product Backlog How to Spark Joy In Your Product Backlog
How to Spark Joy In Your Product Backlog
 
Going Remote: Build Up Your Game Dev Team
Going Remote: Build Up Your Game Dev Team Going Remote: Build Up Your Game Dev Team
Going Remote: Build Up Your Game Dev Team
 
Shift to Remote: How to Manage Your New Workflow
Shift to Remote: How to Manage Your New WorkflowShift to Remote: How to Manage Your New Workflow
Shift to Remote: How to Manage Your New Workflow
 
Hybrid Development Methodology in a Regulated World
Hybrid Development Methodology in a Regulated WorldHybrid Development Methodology in a Regulated World
Hybrid Development Methodology in a Regulated World
 
Better, Faster, Easier: How to Make Git Really Work in the Enterprise
Better, Faster, Easier: How to Make Git Really Work in the EnterpriseBetter, Faster, Easier: How to Make Git Really Work in the Enterprise
Better, Faster, Easier: How to Make Git Really Work in the Enterprise
 
Easier Requirements Management Using Diagrams In Helix ALM
Easier Requirements Management Using Diagrams In Helix ALMEasier Requirements Management Using Diagrams In Helix ALM
Easier Requirements Management Using Diagrams In Helix ALM
 
How To Master Your Mega Backlog
How To Master Your Mega Backlog How To Master Your Mega Backlog
How To Master Your Mega Backlog
 
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...
 
How to Scale With Helix Core and Microsoft Azure
How to Scale With Helix Core and Microsoft Azure How to Scale With Helix Core and Microsoft Azure
How to Scale With Helix Core and Microsoft Azure
 
Achieving Software Safety, Security, and Reliability Part 2
Achieving Software Safety, Security, and Reliability Part 2Achieving Software Safety, Security, and Reliability Part 2
Achieving Software Safety, Security, and Reliability Part 2
 
Should You Break Up With Your Monolith?
Should You Break Up With Your Monolith?Should You Break Up With Your Monolith?
Should You Break Up With Your Monolith?
 
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...
 
What's New in Helix ALM 2019.4
What's New in Helix ALM 2019.4What's New in Helix ALM 2019.4
What's New in Helix ALM 2019.4
 
Free Yourself From the MS Office Prison
Free Yourself From the MS Office Prison Free Yourself From the MS Office Prison
Free Yourself From the MS Office Prison
 

Kürzlich hochgeladen

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Kürzlich hochgeladen (20)

Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 

Enabling the Perforce Administrator via Mobile Device

  • 1. Enabling the P4 Administrator Via Mobile Device Xavier Galvez Senior Engineer Advanced Micro Devices, Inc. © 2011
  • 2. THE PROBLEM •  Granting access is a 24/7 operation
  • 3. THE PROBLEM •  Granting access is a 24/7 operation •  Engineering teams span across the world
  • 4. THE PROBLEM •  Granting access is a 24/7 operation •  Engineering teams span across the world •  Access to areas is tightly regulated
  • 5. THE PROBLEM •  Granting access is a 24/7 operation •  Engineering teams span across the world •  Access to areas is tightly regulated •  A single team is authorized to give access
  • 6. THE PROBLEM •  Granting access is a 24/7 operation •  Engineering teams span across the world •  Access to areas is tightly regulated •  A single team is authorized to give access •  Be able to perform this task whenever and wherever
  • 7. THE SOLUTION •  Leverage the mobile device
  • 8. THE SOLUTION •  Leverage the mobile device •  Create an interface accessible by web browser
  • 9. THE SOLUTION •  Leverage the mobile device •  Create an interface accessible by web browser •  Use the browser on the mobile device
  • 10. THE SOLUTION •  Leverage the mobile device •  Create an interface accessible by web browser •  Use the browser on the mobile device •  Do it securely
  • 11. CONTEXT This presentation touches on: •  Breadth of the organization •  Permissions in the protection table •  Centralized authorization process
  • 12. CONTEXT This presentation touches on: •  Breadth of the organization •  Permissions in the protection table •  Centralized authorization process Then I discuss: •  Evolution of the solution •  Simplicity •  Where to go from here
  • 26. GLOBAL SCOPE grp_northamerica
  • 27. GLOBAL SCOPE grp_northamerica grp_israel
  • 28. GLOBAL SCOPE grp_northamerica grp_israel grp_india
  • 29. GLOBAL SCOPE grp_northamerica grp_israel grp_india grp_shanghai
  • 30. DEPOT STRUCTURE & PERMISSIONS depot stg main rel
  • 31. DEPOT STRUCTURE & PERMISSIONS depot stg main rel
  • 32. DEPOT STRUCTURE & PERMISSIONS r ACC_rel //depot/rel/... w bm_rel //depot/rel/... w ACC_rel //depot/rel/8.10/... r ACC_rel -//depot/rel/*/acc.txt w REG_rel //depot/rel/*/acc.txt r ACC_main //depot/main/... w bm_merc //depot/main/merc/... depot r ACC_merc //depot/main/merc/... w ACC_merc //depot/stg/merc/src/... w ACC_merc //depot/stg/merc/doc/... w nda_merc //depot/stg/merc/nda/... w reg_merc //depot/stg/merc/acc.txt w bm_venus //depot/main/venus/... stg main rel r ACC_venus //depot/main/venus/... w ACC_venus //depot/stg/venus/src/... w ACC_venus //depot/stg/venus/doc/... w nda_venus //depot/stg/venus/nda/... w reg_venus //depot/stg/venus/acc.txt s grp_admins //...
  • 33. DEPOT STRUCTURE & PERMISSIONS r ACC_rel //depot/rel/... w bm_rel //depot/rel/... w ACC_rel //depot/rel/8.10/... stg main rel r ACC_rel -//depot/rel/*/acc.txt w REG_rel //depot/rel/*/acc.txt r ACC_main //depot/main/... merc w bm_merc //depot/main/merc/... r ACC_merc //depot/main/merc/... w ACC_merc //depot/stg/merc/src/... w ACC_merc //depot/stg/merc/doc/... w nda_merc //depot/stg/merc/nda/... w reg_merc //depot/stg/merc/acc.txt w bm_venus //depot/main/venus/... r ACC_venus //depot/main/venus/... w ACC_venus //depot/stg/venus/src/... w ACC_venus //depot/stg/venus/doc/... w nda_venus //depot/stg/venus/nda/... w reg_venus //depot/stg/venus/acc.txt s grp_admins //...
  • 34. DEPOT STRUCTURE & PERMISSIONS r ACC_rel //depot/rel/... w bm_rel //depot/rel/... w ACC_rel //depot/rel/8.10/... stg main rel r ACC_rel -//depot/rel/*/acc.txt w REG_rel //depot/rel/*/acc.txt r ACC_main //depot/main/... merc w bm_merc //depot/main/merc/... r ACC_merc //depot/main/merc/... src w ACC_merc //depot/stg/merc/src/... w ACC_merc //depot/stg/merc/doc/... w nda_merc //depot/stg/merc/nda/... doc w reg_merc //depot/stg/merc/acc.txt w bm_venus //depot/main/venus/... r ACC_venus //depot/main/venus/... w ACC_venus //depot/stg/venus/src/... w ACC_venus //depot/stg/venus/doc/... w nda_venus //depot/stg/venus/nda/... w reg_venus //depot/stg/venus/acc.txt s grp_admins //...
  • 35. DEPOT STRUCTURE & PERMISSIONS r ACC_rel //depot/rel/... w bm_rel //depot/rel/... w ACC_rel //depot/rel/8.10/... stg main rel r ACC_rel -//depot/rel/*/acc.txt w REG_rel //depot/rel/*/acc.txt r ACC_main //depot/main/... merc merc r ACC_merc //depot/main/merc/... w bm_merc //depot/main/merc/... src w ACC_merc //depot/stg/merc/src/... w ACC_merc //depot/stg/merc/doc/... w nda_merc //depot/stg/merc/nda/... doc w reg_merc //depot/stg/merc/acc.txt w bm_venus //depot/main/venus/... r ACC_venus //depot/main/venus/... w ACC_venus //depot/stg/venus/src/... w ACC_venus //depot/stg/venus/doc/... w nda_venus //depot/stg/venus/nda/... w reg_venus //depot/stg/venus/acc.txt s grp_admins //...
  • 36. DEPOT STRUCTURE & PERMISSIONS r ACC_rel //depot/rel/... w bm_rel //depot/rel/... w ACC_rel //depot/rel/8.10/... stg main rel r ACC_rel -//depot/rel/*/acc.txt w REG_rel //depot/rel/*/acc.txt r ACC_main //depot/main/... merc merc r ACC_merc //depot/main/merc/... w bm_merc //depot/main/merc/... src w ACC_merc //depot/stg/merc/src/... w ACC_merc //depot/stg/merc/doc/... w nda_merc //depot/stg/merc/nda/... doc w reg_merc //depot/stg/merc/acc.txt w bm_venus //depot/main/venus/... r ACC_venus //depot/main/venus/... venus w ACC_venus //depot/stg/venus/src/... w ACC_venus //depot/stg/venus/doc/... src w nda_venus //depot/stg/venus/nda/... w reg_venus //depot/stg/venus/acc.txt doc s grp_admins //...
  • 37. DEPOT STRUCTURE & PERMISSIONS r ACC_rel //depot/rel/... w bm_rel //depot/rel/... w ACC_rel //depot/rel/8.10/... stg main rel r ACC_rel -//depot/rel/*/acc.txt w REG_rel //depot/rel/*/acc.txt r ACC_main //depot/main/... merc merc r ACC_merc //depot/main/merc/... w bm_merc //depot/main/merc/... src w ACC_merc //depot/stg/merc/src/... venus w ACC_merc //depot/stg/merc/doc/... w nda_merc //depot/stg/merc/nda/... doc w reg_merc //depot/stg/merc/acc.txt r ACC_venus //depot/main/venus/... w bm_venus //depot/main/venus/... venus w ACC_venus //depot/stg/venus/src/... w ACC_venus //depot/stg/venus/doc/... src w nda_venus //depot/stg/venus/nda/... w reg_venus //depot/stg/venus/acc.txt doc s grp_admins //...
  • 38. DEPOT STRUCTURE & PERMISSIONS r ACC_rel //depot/rel/... w bm_rel //depot/rel/... w ACC_rel //depot/rel/8.10/... stg main rel r ACC_rel -//depot/rel/*/acc.txt w REG_rel //depot/rel/*/acc.txt r ACC_main //depot/main/... merc merc r ACC_merc //depot/main/merc/... w bm_merc //depot/main/merc/... src w ACC_merc //depot/stg/merc/src/... venus w ACC_merc //depot/stg/merc/doc/... w nda_merc //depot/stg/merc/nda/... doc w reg_merc //depot/stg/merc/acc.txt r ACC_venus //depot/main/venus/... w bm_venus //depot/main/venus/... venus w ACC_venus //depot/stg/venus/src/... w ACC_venus //depot/stg/venus/doc/... src w nda_venus //depot/stg/venus/nda/... w reg_venus //depot/stg/venus/acc.txt doc s grp_admins //...
  • 39. DEPOT STRUCTURE & PERMISSIONS r ACC_rel //depot/rel/... w bm_rel //depot/rel/... w ACC_rel //depot/rel/8.10/... stg main rel r ACC_rel -//depot/rel/*/acc.txt w REG_rel //depot/rel/*/acc.txt r ACC_main //depot/main/... merc merc 8.10 r ACC_merc //depot/main/merc/... w bm_merc //depot/main/merc/... src merc w ACC_merc //depot/stg/merc/src/... venus w ACC_merc //depot/stg/merc/doc/... w nda_merc //depot/stg/merc/nda/... doc venus w reg_merc //depot/stg/merc/acc.txt r ACC_venus //depot/main/venus/... w bm_venus //depot/main/venus/... venus w ACC_venus //depot/stg/venus/src/... w ACC_venus //depot/stg/venus/doc/... src w nda_venus //depot/stg/venus/nda/... w reg_venus //depot/stg/venus/acc.txt doc s grp_admins //...
  • 40. DEPOT STRUCTURE & PERMISSIONS r ACC_rel //depot/rel/... w bm_rel //depot/rel/... w ACC_rel //depot/rel/8.10/... stg main rel r ACC_rel -//depot/rel/*/acc.txt w REG_rel //depot/rel/*/acc.txt r ACC_main //depot/main/... merc merc 8.10 r ACC_merc //depot/main/merc/... w bm_merc //depot/main/merc/... src merc w ACC_merc //depot/stg/merc/src/... venus w ACC_merc //depot/stg/merc/doc/... w nda_merc //depot/stg/merc/nda/... doc venus w reg_merc //depot/stg/merc/acc.txt r ACC_venus //depot/main/venus/... w bm_venus //depot/main/venus/... venus w ACC_venus //depot/stg/venus/src/... w ACC_venus //depot/stg/venus/doc/... src w nda_venus //depot/stg/venus/nda/... w reg_venus //depot/stg/venus/acc.txt doc s grp_admins //...
  • 41. DEPOT STRUCTURE & PERMISSIONS r ACC_rel //depot/rel/... w bm_rel //depot/rel/... w ACC_rel //depot/rel/8.10/... stg main rel r ACC_rel -//depot/rel/*/acc.txt w REG_rel //depot/rel/*/acc.txt r ACC_main //depot/main/... merc merc 8.10 r ACC_merc //depot/main/merc/... w bm_merc //depot/main/merc/... src merc w ACC_merc //depot/stg/merc/src/... venus w ACC_merc //depot/stg/merc/doc/... w nda_merc //depot/stg/merc/nda/... doc venus w reg_merc //depot/stg/merc/acc.txt r ACC_venus //depot/main/venus/... w bm_venus //depot/main/venus/... venus w ACC_venus //depot/stg/venus/src/... w ACC_venus //depot/stg/venus/doc/... src w nda_venus //depot/stg/venus/nda/... w reg_venus //depot/stg/venus/acc.txt doc s grp_admins //...
  • 42. DEPOT STRUCTURE & PERMISSIONS r ACC_rel //depot/rel/... w bm_rel //depot/rel/... w ACC_rel //depot/rel/8.10/... stg main rel r ACC_rel -//depot/rel/*/acc.txt w REG_rel //depot/rel/*/acc.txt r ACC_main //depot/main/... merc merc 8.10 r ACC_merc //depot/main/merc/... w bm_merc //depot/main/merc/... src merc w ACC_merc //depot/stg/merc/src/... venus w ACC_merc //depot/stg/merc/doc/... w nda_merc //depot/stg/merc/nda/... doc venus w reg_merc //depot/stg/merc/acc.txt r ACC_venus //depot/main/venus/... w bm_venus //depot/main/venus/... venus w ACC_venus //depot/stg/venus/src/... w ACC_venus //depot/stg/venus/doc/... src w nda_venus //depot/stg/venus/nda/... w reg_venus //depot/stg/venus/acc.txt doc s grp_admins //...
  • 43. DEPOT STRUCTURE & PERMISSIONS r ACC_rel //depot/rel/... w bm_rel //depot/rel/... w ACC_rel //depot/rel/8.10/... stg main rel r ACC_rel -//depot/rel/*/acc.txt w REG_rel //depot/rel/*/acc.txt r ACC_main //depot/main/... merc merc 8.10 r ACC_merc //depot/main/merc/... w bm_merc //depot/main/merc/... src merc w ACC_merc //depot/stg/merc/src/... venus w ACC_merc //depot/stg/merc/doc/... w nda_merc //depot/stg/merc/nda/... doc venus w reg_merc //depot/stg/merc/acc.txt r ACC_venus //depot/main/venus/... w bm_venus //depot/main/venus/... venus w ACC_venus //depot/stg/venus/src/... w ACC_venus //depot/stg/venus/doc/... src w nda_venus //depot/stg/venus/nda/... w reg_venus //depot/stg/venus/acc.txt doc s grp_admins //...
  • 44. DEPOT STRUCTURE & PERMISSIONS r ACC_rel //depot/rel/... w bm_rel //depot/rel/... w ACC_rel //depot/rel/8.10/... stg main rel r ACC_rel -//depot/rel/*/acc.txt w REG_rel //depot/rel/*/acc.txt r ACC_main //depot/main/... merc merc 8.10 r ACC_merc //depot/main/merc/... w bm_merc //depot/main/merc/... src merc w ACC_merc //depot/stg/merc/src/... venus w ACC_merc //depot/stg/merc/doc/... w nda_merc //depot/stg/merc/nda/... doc nda venus w reg_merc //depot/stg/merc/acc.txt r ACC_venus //depot/main/venus/... w bm_venus //depot/main/venus/... venus w ACC_venus //depot/stg/venus/src/... w ACC_venus //depot/stg/venus/doc/... src w nda_venus //depot/stg/venus/nda/... w reg_venus //depot/stg/venus/acc.txt doc nda s grp_admins //...
  • 45. DEPOT STRUCTURE & PERMISSIONS r ACC_rel //depot/rel/... w bm_rel //depot/rel/... w ACC_rel //depot/rel/8.10/... stg main rel r ACC_rel -//depot/rel/*/acc.txt w REG_rel //depot/rel/*/acc.txt r ACC_main //depot/main/... merc merc 8.10 r ACC_merc //depot/main/merc/... w bm_merc //depot/main/merc/... src merc w ACC_merc //depot/stg/merc/src/... venus w ACC_merc //depot/stg/merc/doc/... w nda_merc //depot/stg/merc/nda/... doc nda venus w reg_merc //depot/stg/merc/acc.txt r ACC_venus //depot/main/venus/... w bm_venus //depot/main/venus/... venus w ACC_venus //depot/stg/venus/src/... w ACC_venus //depot/stg/venus/doc/... src w nda_venus //depot/stg/venus/nda/... w reg_venus //depot/stg/venus/acc.txt doc nda s grp_admins //...
  • 46. PERMISSIONS: HIGH-LEVEL TEAMS r ACC_rel //depot/rel/... bm_rel w bm_rel //depot/rel/... w ACC_rel //depot/rel/8.10/... r ACC_rel -//depot/rel/*/acc.txt bm_merc w REG_rel //depot/rel/*/acc.txt r ACC_main //depot/main/... nda_merc r ACC_merc //depot/main/merc/... w bm_merc //depot/main/merc/... reg_merc w ACC_merc //depot/stg/merc/src/... w ACC_merc //depot/stg/merc/doc/... bm_venus w nda_merc //depot/stg/merc/nda/... w reg_merc //depot/stg/merc/acc.txt nda_venus r ACC_venus //depot/main/venus/... w bm_venus //depot/main/venus/... w ACC_venus //depot/stg/venus/src/... reg_venus w ACC_venus //depot/stg/venus/doc/... w nda_venus //depot/stg/venus/nda/... grp_admins w reg_venus //depot/stg/venus/acc.txt s grp_admins //...
  • 47. PERMISSIONS: HIGH-LEVEL TEAM EXAMPLES r ACC_rel //depot/rel/... w bm_rel //depot/rel/... w ACC_rel //depot/rel/8.10/... r ACC_rel -//depot/rel/*/acc.txt w REG_rel //depot/rel/*/acc.txt r ACC_main //depot/main/... r ACC_merc //depot/main/merc/... w bm_merc //depot/main/merc/... w ACC_merc //depot/stg/merc/src/... w ACC_merc //depot/stg/merc/doc/... bm_venus w nda_merc //depot/stg/merc/nda/... w reg_merc //depot/stg/merc/acc.txt r ACC_venus //depot/main/venus/... w bm_venus //depot/main/venus/... w ACC_venus //depot/stg/venus/src/... w ACC_venus //depot/stg/venus/doc/... w nda_venus //depot/stg/venus/nda/... grp_admins w reg_venus //depot/stg/venus/acc.txt s grp_admins //...
  • 48. PERMISSIONS: ACCESS GROUPS r ACC_rel //depot/rel/... ACC_rel w bm_rel //depot/rel/... w ACC_rel //depot/rel/8.10/... r ACC_rel -//depot/rel/*/acc.txt REG_rel w REG_rel //depot/rel/*/acc.txt r ACC_main //depot/main/... ACC_main r ACC_merc //depot/main/merc/... w bm_merc //depot/main/merc/... ACC_merc w ACC_merc //depot/stg/merc/src/... w ACC_merc //depot/stg/merc/doc/... ACC_venus w nda_merc //depot/stg/merc/nda/... w reg_merc //depot/stg/merc/acc.txt r ACC_venus //depot/main/venus/... w bm_venus //depot/main/venus/... w ACC_venus //depot/stg/venus/src/... w ACC_venus //depot/stg/venus/doc/... w nda_venus //depot/stg/venus/nda/... w reg_venus //depot/stg/venus/acc.txt s grp_admins //...
  • 49. PERMISSIONS: ACCESS GROUP EXAMPLE r ACC_rel //depot/rel/... ACC_rel w bm_rel //depot/rel/... w ACC_rel //depot/rel/8.10/... r ACC_rel -//depot/rel/*/acc.txt w REG_rel //depot/rel/*/acc.txt r ACC_main //depot/main/... ACC_main r ACC_merc //depot/main/merc/... w bm_merc //depot/main/merc/... ACC_merc w ACC_merc //depot/stg/merc/src/... w ACC_merc //depot/stg/merc/doc/... w nda_merc //depot/stg/merc/nda/... w reg_merc //depot/stg/merc/acc.txt r ACC_venus //depot/main/venus/... w bm_venus //depot/main/venus/... grp_shanghai w ACC_venus //depot/stg/venus/src/... w ACC_venus //depot/stg/venus/doc/... w nda_venus //depot/stg/venus/nda/... w reg_venus //depot/stg/venus/acc.txt s grp_admins //...
  • 50. PERMISSIONS: ACCESS GROUP EXAMPLE r ACC_rel //depot/rel/... ACC_rel w bm_rel //depot/rel/... w ACC_rel //depot/rel/8.10/... r ACC_rel -//depot/rel/*/acc.txt w REG_rel //depot/rel/*/acc.txt r ACC_main //depot/main/... ACC_main r ACC_merc //depot/main/merc/... w bm_merc //depot/main/merc/... ACC_merc w ACC_merc //depot/stg/merc/src/... w ACC_merc //depot/stg/merc/doc/... ACC_venus w nda_merc //depot/stg/merc/nda/... w reg_merc //depot/stg/merc/acc.txt r ACC_venus //depot/main/venus/... w bm_venus //depot/main/venus/... grp_northamerica w ACC_venus //depot/stg/venus/src/... w ACC_venus //depot/stg/venus/doc/... w nda_venus //depot/stg/venus/nda/... w reg_venus //depot/stg/venus/acc.txt s grp_admins //...
  • 51. PERMISSIONS: COMBINATION EXAMPLE r ACC_rel //depot/rel/... ACC_rel w bm_rel //depot/rel/... w ACC_rel //depot/rel/8.10/... r ACC_rel -//depot/rel/*/acc.txt w REG_rel //depot/rel/*/acc.txt r ACC_main //depot/main/... ACC_main r ACC_merc //depot/main/merc/... w bm_merc //depot/main/merc/... ACC_merc w ACC_merc //depot/stg/merc/src/... w ACC_merc //depot/stg/merc/doc/... ACC_venus w nda_merc //depot/stg/merc/nda/... w reg_merc //depot/stg/merc/acc.txt bm_venus r ACC_venus //depot/main/venus/... w bm_venus //depot/main/venus/... grp_northamerica w ACC_venus //depot/stg/venus/src/... w ACC_venus //depot/stg/venus/doc/... w nda_venus //depot/stg/venus/nda/... w reg_venus //depot/stg/venus/acc.txt s grp_admins //...
  • 54. CREATING ACCOUNTS VIA NEWUSER.EXE
  • 55. CREATING ACCOUNTS VIA NEWUSER.EXE
  • 61. PROBLEMS WITH BINARIES •  Newer versions need to be recompiled.
  • 62. PROBLEMS WITH BINARIES •  Newer versions need to be recompiled. •  Deployment.
  • 64. ADVANTAGES WITH WEB APPS •  Newer versions available right away.
  • 65. ADVANTAGES WITH WEB APPS •  Newer versions available right away. •  Experimental versions can be easily tested.
  • 66. ADVANTAGES WITH WEB APPS •  Newer versions available right away. •  Experimental versions can be easily tested. •  Real-time validation on inputs.
  • 67. ADVANTAGES WITH WEB APPS •  Newer versions available right away. •  Experimental versions can be easily tested. •  Real-time validation on inputs. •  OS-independent.
  • 68. LEVERAGE EXISTING RESOURCE #1: WEB SERVER
  • 69. LEVERAGE EXISTING RESOURCE #1: WEB SERVER
  • 70. LEVERAGE EXISTING RESOURCE #1: WEB SERVER
  • 78. LEVERAGE EXISTING RESOURCE #2: BLACKBERRY internet wireless network BES firewall AMD
  • 79. LEVERAGE EXISTING RESOURCE #2: BLACKBERRY internet wireless network BES firewall AMD
  • 80. LEVERAGE EXISTING RESOURCE #2: BLACKBERRY
  • 81. LEVERAGE EXISTING RESOURCE #3: iOS internet wireless network secure firewall VPN AMD
  • 83. SECURITY Wireless Solutions •  BlackBerry Enterprise Solution for Blackberries •  Secure VPN for iOS devices
  • 84. SECURITY Wireless Solutions •  BlackBerry Enterprise Solution for Blackberries •  Secure VPN for iOS devices HTTP is not secure, use HTTPS! •  Encrypts the HTTP message prior to transmission •  Decrypts the message upon arrival •  Requires the use of CA certificates
  • 85. SECURITY Wireless Solutions •  BlackBerry Enterprise Solution for Blackberries •  Secure VPN for iOS devices HTTP is not secure, use HTTPS! •  Encrypts the HTTP message prior to transmission •  Decrypts the message upon arrival •  Requires the use of CA certificates User Authentication and Identification •  REMOTE_USER environment variable
  • 86. REDUCING RISK Keep the location of the web page unknown •  Only known to Perforce admins
  • 87. REDUCING RISK Keep the location of the web page unknown •  Only known to Perforce admins Limit what can be done on the web page •  Create a new user account •  Display information from p4 protects and p4 groups •  Add an existing user to currently existing groups •  Remove the user from a group •  Reset the password of an existing user
  • 88. WHAT NEXT? Server-side APIs •  P4Java, P4Perl, P4Ruby, P4Python, P4PHP •  ASP.NET with Perforce C/C++ API
  • 89. WHAT NEXT? Server-side APIs •  P4Java, P4Perl, P4Ruby, P4Python, P4PHP •  ASP.NET with Perforce C/C++ API Client-side Technologies •  jQuery, jQuery Mobile, HTML5
  • 90. WHAT NEXT? Server-side APIs •  P4Java, P4Perl, P4Ruby, P4Python, P4PHP •  ASP.NET with Perforce C/C++ API Client-side Technologies •  jQuery, jQuery Mobile, HTML5 More Features! •  Monitor and restart servers •  Most-used commands can be called
  • 91. CONCLUSION The result: •  Simple mechanism •  Took advantage of existing resources •  Latest web technologies were not necessary •  Quick development, fast deployment
  • 92. CONCLUSION The result: •  Simple mechanism •  Took advantage of existing resources •  Latest web technologies were not necessary •  Quick development, fast deployment The advantages: •  Web page + mobile device allows rich feature set •  Write once, run on all •  Feel at home with the same interface •  Not just work hard, but work SMART
  • 96. ICON CREDITS •  http://www.iconshock.com/ •  http://fasticon.com/ •  http://johnfreeborn.com/ •  http://www.deleket.com/ •  http://www.customicondesign.com/ •  http://www.visualpharm.com/ •  http://www.icons-land.com/ •  http://3dlb.com/