JoomlaWebサイトとJava/jspWebサイトがあります。jspアプリケーションから認証の詳細を取得するために、Joomlaのカスタム認証プラグインを作成しようとしています。
そのため、最初の試みとして、onUserAuthenticate()
デフォルトのjoomla認証プラグインクラスで関数を編集しました。
function onUserAuthenticate($credentials, $options, &$response)
{
$response->type = 'joomla';
// Joomla does not like blank passwords
if (empty($credentials['password'])) {
$response->status = JAuthentication::STATUS_FAILURE;
$response->error_message = JText::_('JGLOBAL_AUTH_EMPTY_PASS_NOT_ALLOWED');
return false;
}else{
$response->status = JAuthentication::STATUS_SUCCESS;
return true;
}
}
私が推測したように、それはすべての資格情報に対して機能するはずですが、そうではありませんでした。
私はすでにユーザーを呼び出しadmin
ており、ログインはユーザー名がadmin
。しかし、これは私が期待したものではありません。anything
ユーザー名とanything
パスワードでログインする必要があります。
最初の試みとして、クレデンシャルのためにデフォルトのjoomlaデータベースへのアクセスを完全に停止する必要がありました。ただし、認証スクリプトは引き続きローカルDBを探しています。この問題の解決にご協力ください。
また、jspサイトとの適切なコミュニケーション方法を提案していただければ幸いです。
次のように、SOAPを試してみます。
$credentials = array(
'memberNumber' => $credentials['username'],
'password' => $credentials['password']
);
$client = new SoapClient('http://example.com/soap.wsdl', $credentials);
これは私のjspアプリケーションからフィードバックを得る最良の方法ですか?