| 1 |
php-vas: Vintela Authentication Services API for PHP
|
| 2 |
|
| 3 |
Summary
|
| 4 |
-------
|
| 5 |
This PHP module provides access to the VAS API.
|
| 6 |
Please see http://rc.vintela.com/topics/php-vas/ for more information
|
| 7 |
about this package.
|
| 8 |
|
| 9 |
|
| 10 |
Authors
|
| 11 |
-------
|
| 12 |
Daniel Kerns
|
| 13 |
Russell Bateman
|
| 14 |
David Leonard
|
| 15 |
|
| 16 |
|
| 17 |
License
|
| 18 |
-------
|
| 19 |
Please see the file LICENSE in this directory.
|
| 20 |
|
| 21 |
|
| 22 |
Requirements
|
| 23 |
------------
|
| 24 |
To use the module, you will need VAS 3.0 client libraries or later.
|
| 25 |
|
| 26 |
To compile the source code you will need
|
| 27 |
PHP SDK (php-devel or php-dev)
|
| 28 |
VAS SDK (vasdev)
|
| 29 |
a C compiler and related toolchain
|
| 30 |
make
|
| 31 |
|
| 32 |
For development, you will also need
|
| 33 |
autotools (i.e. autoconf, automake)
|
| 34 |
doxygen
|
| 35 |
|
| 36 |
You will need to install the PHP SDK including phpize. You may find that you
|
| 37 |
need autoconf 2.59 and automake 1.9.
|
| 38 |
|
| 39 |
|
| 40 |
Supported versions of PHP
|
| 41 |
-------------------------
|
| 42 |
PHP-VAS has been built with both php4 and php5, but most development and
|
| 43 |
testing has proceeded on php4.
|
| 44 |
|
| 45 |
|
| 46 |
Note on VAS SDK requirement
|
| 47 |
---------------------------
|
| 48 |
The VAS SDK installation leaves headers on /opt/quest/include,
|
| 49 |
in particular, vas.h, vas_gss.h and vas_ldap.h. It also places
|
| 50 |
libvas.so on /opt/quest/lib--required to build the PHP-VAS
|
| 51 |
extension, the module referenced from your PHP program that
|
| 52 |
gives you access to VAS APIs.
|
| 53 |
|
| 54 |
|
| 55 |
Installing into a web server
|
| 56 |
----------------------------
|
| 57 |
If your platform does not come with a standard installation of PHP,
|
| 58 |
please run the vas-php-setup script.
|
| 59 |
|
| 60 |
|
| 61 |
Building
|
| 62 |
--------
|
| 63 |
If your distribution contains the file 'configure', then simply run
|
| 64 |
|
| 65 |
configure
|
| 66 |
make
|
| 67 |
make check
|
| 68 |
make package
|
| 69 |
|
| 70 |
If you have checked out the sources from subversion, then first generate the
|
| 71 |
configure script by first running
|
| 72 |
|
| 73 |
sh bootstrap.sh
|
| 74 |
|
| 75 |
|
| 76 |
Debugging notes
|
| 77 |
---------------
|
| 78 |
|
| 79 |
* Segmentation faults are usually caused by symbol collisions with other
|
| 80 |
modules.
|
| 81 |
|
| 82 |
* Add this line to the PHP script so that errors are logged:
|
| 83 |
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
|
| 84 |
|
| 85 |
* To ctag the bindings implementation in extension/vasapi.c:
|
| 86 |
cd extension ; ctags -R <path-to-PHP-headers>
|
| 87 |
For example:
|
| 88 |
cd extension ; ctags -R /usr/local/include/php
|
| 89 |
|
| 90 |
* To test the suite run through by make check, correct (to your environment)
|
| 91 |
the variables test/test.php: $username, $password, $adminusername,
|
| 92 |
$adminpassword, $searchbase, $groupname, $principal, $userupn and
|
| 93 |
$computername (at least).
|
| 94 |
|
| 95 |
Known issues
|
| 96 |
------------
|
| 97 |
|
| 98 |
* All of the vas.h APIs are supported although they are not completely tested.
|
| 99 |
|
| 100 |
* Of the vas_gss.h APIs, only vas_gss_initialize, vas_gss_acquire_cred,
|
| 101 |
vas_gss_auth are implemented.
|
| 102 |
|
| 103 |
* None of the krb5 or ldap APIs are implemented yet.
|
| 104 |
Implementing these is pretty easy, just not done yet.
|
| 105 |
|
| 106 |
* The VAS libraries are not thread safe. Locking needs to be put in place
|
| 107 |
to accommodate that.
|
| 108 |
|
| 109 |
* A test suite needs to be brought online.
|
| 110 |
|
| 111 |
* The high-level API needs more work.
|
| 112 |
Need to write a couple of sample applications to see if it makes sense.
|