2

PHP でログインフォームを作成しましたが、Kerberos で認証したいと考えています。誰もそれを行う方法を知っていますか? 私はかなり長い間試みてきましたが、成功していません。

私がこれまでに試したこと:

1. KADM5 PHP モジュール。このリンクからマニュアルを読みました。私はまだインストール手順にこだわっています。次のコマンドを使用して PECL 拡張機能をインストールするように指示されています。

$pecl install pecl_http

ただし、常に次のエラーが表示されます。

No releases available for package "pecl.php.net/pecl_http"
install failed

マニュアルに記載されているすべてのパッケージをインストールしました。

2. LDAP:PHP モジュール。これは私がPHPで試したコードです:

<?php  

    $ldaphost = <servername>;  
    $ldapport = 636;  
    $ds = ldap_connect($ldaphost, $ldapport) or die("Could not connect to ".$ldaphost);

    echo $ds;  

    if($ds) {

        ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3);  
        $username = $_GET["username"];  
        $upasswd = $_GET["password"];  
        $ldapbind = ldap_bind($ds, $username, $upasswd);  

        if($ldapbind) {
            print "Congratulations!";
        } else {
            print "Access Denied!";
        }

    } 

?>

このスクリプトを実行すると、次のエラーが発生します。

リソース ID #4PHP 警告: ldap_bind(): サーバーにバインドできません: 行 15 の /var/www/joomla/scripts/testing.php の LDAP サーバーに接続できません
アクセスが拒否されました!

4

1 に答える 1

1

私が覚えている限り、K5ADMには「ログイン」機能がないため、「実際の」Kerberosモジュール http://savannah.nongnu.org/projects/phpkrb5/で試すことができます。

現在のバージョンがコンパイルされるかどうかはわかりません。私は数年前にそれをしました、そして私は以下のパッチを適用する必要がありました、そしてmakefileを使用しませんでしたが

cc -DCOMPILE_DL_KRB5-fpic-I。-I / usr / include / php -I / usr / include / php / main -I / usr / include / php / Zend -I / usr / include / php / TSRM -c -o phpkrb5.o phpkrb5.c cc-共有-rdynamic-ophpkrb5.so phpkrb5.o

Index: phpkrb5.c
===================================================================
RCS file: /sources/phpkrb5/phpkrb5/phpkrb5.c,v
retrieving revision 1.1
diff -r1.1 phpkrb5.c
23,24c23,24
< #include "php.h"
< #include "php_krb5.h"
---
> #include "main/php.h"
> #include "phpkrb5.h"
于 2012-08-15T14:10:17.097 に答える