LXXIV. KADM5

導入

このパッケージは、Kerberos V (ケルベロス バージョン 5) 管理サーバへのアクセス機能を提供します。 これにより、Kerberos V のプリンシパルやポリシーの 作成・変更・削除が可能となります。

Kerberos についての詳細な情報は、http://web.mit.edu/kerberos/www/ で得られます。

Kerberos および KADM5 についてのドキュメントは、http://web.mit.edu/kerberos/www/krb5-1.2/krb5-1.2.8/doc/admin_toc.html にあります。

リソース型

この拡張モジュールでは KADM5 ハンドルを定義しています。これは kadm5_init_with_password() が返すものです。

定義済み定数

以下の定数が定義されています。 この関数の拡張モジュールが PHP 組み込みでコンパイルされているか、 実行時に動的にロードされている場合のみ使用可能です。

属性フラグ用の定数

関数 kadm5_create_principal()kadm5_modify_principal() および kadm5_modify_principal() では、ビットを立てることで 特別な属性を指定することができます。以下のような定数が定義されています。

表 1. KDC が使用する属性定数

定数
KRB5_KDB_DISALLOW_POSTDATED
KRB5_KDB_DISALLOW_FORWARDABLE
KRB5_KDB_DISALLOW_TGT_BASED
KRB5_KDB_DISALLOW_RENEWABLE
KRB5_KDB_DISALLOW_PROXIABLE
KRB5_KDB_DISALLOW_DUP_SKEY
KRB5_KDB_DISALLOW_ALL_TIX
KRB5_KDB_REQUIRES_PRE_AUTH
KRB5_KDB_REQUIRES_HW_AUTH
KRB5_KDB_REQUIRES_PWCHANGE
KRB5_KDB_DISALLOW_SVR
KRB5_KDB_PWCHANGE_SERVER
KRB5_KDB_SUPPORT_DESMD5
KRB5_KDB_NEW_PRINC

オプション用の定数

関数 kadm5_create_principal()kadm5_modify_principal() および kadm5_get_principal() では、プリンシパルの オプションを連想配列形式で指定したり関数の返り値として 受け取ったりできます。連想配列のキーは、以下で定義されている 文字列定数となります。

表 2. プリンシパルを作成/変更/取得する際のオプション

定数説明
KADM5_PRINCIPALlongプリンシパルの有効期限を Kerberos タイムスタンプで指定します。
KADM5_PRINC_EXPIRE_TIMElongプリンシパルの有効期限を Kerberos タイムスタンプで指定します。
KADM5_LAST_PW_CHANGElongプリンシパルのパスワードが最後に変更された時刻。
KADM5_PW_EXPIRATIONlong プリンシパルの現在のパスワードの有効期限を Kerberos タイムスタンプで指定します。
KADM5_MAX_LIFElong このプリンシパルに発行された Kerberos チケットの最大の生存時間。
KADM5_MAX_RLIFElong このプリンシパルに発行された Kerberos チケットの最大の 更新可能生存時間。
KADM5_MOD_NAMEstring 最後にこのプリンシパルを変更した Kerberos プリンシパルの名前。
KADM5_MOD_TIMElong このプリンシパルの最終更新時刻を Kerberos タイムスタンプ形式で指定します。
KADM5_KVNOlongプリンシパルの現在のキーのバージョン。
KADM5_POLICYstringこのプリンシパルを制御するポリシーの名前。
KADM5_CLEARPOLICYlong 新しいプリンシパルの「デフォルトの」ポリシーには 標準手続きが関連付けられます。 KADM5_CLEARPOLICY は、この挙動を抑制します。
KADM5_LAST_SUCCESSlong最後に AS_REQ が成功したときの KDC 時刻。
KADM5_LAST_FAILEDlong最後に AS_REQ が失敗したときの KDC 時刻。
KADM5_FAIL_AUTH_COUNTlongAS_REQ が連続して失敗した数。
KADM5_RANDKEYlong プリンシパルに対してランダムなパスワードを生成します。 パラメータ password は無視されます。
KADM5_ATTRIBUTESlongKDC が使用する属性のビットフィールド。

この例では、KADM5 データベースに対して 接続・問い合わせ・結果 principal の表示・切断 を行います。

例 1. KADM5 拡張モジュールの概要

<?php

  $handle
= kadm5_init_with_password("afs-1", "GONICUS.LOCAL", "admin/admin", "password");

  print
"<h1>get_principals</h1>\n";
  
$principals = kadm5_get_principals($handle);
  for(
$i=0; $i<count($principals); $i++)
      print
"$principals[$i]<br>\n";

  print
"<h1>get_policies</h1>\n";
  
$policies = kadm5_get_policies($handle);
  for(
$i=0; $i<count($policies); $i++)
      print
"$policies[$i]<br>\n";

  print
"<h1>get_principal burbach@GONICUS.LOCAL</h1>\n";

  
$options = kadm5_get_principal($handle, "burbach@GONICUS.LOCAL" );
  
$keys = array_keys($options);
  for(
$i=0; $i<count($keys); $i++) {
    
$value = $options[$keys[$i]];
    print
"$keys[$i]: $value<br>\n";
  }

  
$options = array(KADM5_PRINC_EXPIRE_TIME => 0);
  
kadm5_modify_principal($handle, "burbach@GONICUS.LOCAL", $options);

  
kadm5_destroy($handle);
?>

問合せ先

この拡張モジュールに対するコメントがあったり、バグフィックスや 機能拡張のパッチを作成された場合、あるいは開発に参加したいなどの 場合は holger.burbach@gonicus.de までメールをください。このプロジェクトのホームページは http://oss.gonicus.de/project/?group_id=7 です。

目次
kadm5_chpass_principal -- プリンシパルのパスワードを変更する
kadm5_create_principal -- 指定したパラメータで、kerberos のプリンシパルを作成する
kadm5_delete_principal -- kerberos プリンシパルを削除する
kadm5_destroy -- 管理サーバへの接続を閉じ、関連するすべてのリソースを開放する
kadm5_flush --  Kerberos データベースに対するすべての変更を取り消し、Kerberos 管理サーバとの接続はオープンしたままにする
kadm5_get_policies -- Kerberos データベースから、すべてのポリシーを取得する
kadm5_get_principal -- Kerberos データベースから、プリンシパルのエントリを取得する
kadm5_get_principals -- Kerberos データベースから、すべてのプリンシパルを取得する
kadm5_init_with_password --  KADM5 ライブラリへの接続をオープンし、必要なステータス情報を初期化する
kadm5_modify_principal -- kerberos プリンシパルを、指定したパラメータで変更する


東京デリヘル 池袋デリヘル 新宿デリヘル 渋谷デリヘル 品川デリヘル

鶯谷デリヘル 大塚デリヘル 立川デリヘル 町田デリヘル 横浜デリヘル 埼玉デリヘル

千葉デリヘル 大阪デリヘル 神戸デリヘル 京都デリヘル 名古屋デリヘル デリヘル

アダルトレンタルサーバー アダルトレンタルサーバー 表札 断熱塗料 UGUISU

大阪 老人ホーム 京都 老人ホーム 兵庫 老人ホーム 和歌山 老人ホーム 滋賀 老人ホーム

奈良 老人ホーム 東京 老人ホーム 神奈川 老人ホーム 千葉 老人ホーム 埼玉 老人ホーム 老人ホーム