0

Windows Server 2003 で Cisco ACS を使用するように Cisco 音声ゲートウェイを設定しました。一方、MSSQL サーバとの ODBC 接続を介して外部データベースを設定しました。TCLIVR ドキュメントに記載されているように、Mirosoft SQL サーバーで CSNTAuthUserPap という名前のストアド プロシージャを使用して、音声ゲートウェイからの承認要求に応答する必要があります。ストアド プロシージャの形式は次のとおりです。

CREATE PROCEDURE [dbo].[CSNTAuthUserPap]

@username varchar(64)、@pass varchar(255)

AS SET NOCOUNT ON

存在する場合(

SELECT username FROM users WHERE username = @username AND Returnparam = @pass )

SELECT 0,'1','1','エラーなし'

そうしないと

SELECT 3,0,'odbc','ODBC 認証エラー'

私の質問は、ACS サーバーに返されるパラメーターの読み取りに関するものです。返されるレコードの形式は次のとおりです。

  1. 返される結果: 0 は認証成功、1 ~ 4 は認証失敗を意味します。
  2. 承認のためのグループ番号
  3. 口座情報
  4. エラー文字列

TCL コードで ACS から返されたアカウント情報を読み取るにはどうすればよいですか?

4

1 に答える 1

0

見つけた。答えは AVPairs とカスタム avpair の作成にあります。RADIUS サーバーから返された各グループに対して avpair を指定し、次のように TCL コードで読み取る必要があります。

    if { [infotag get aaa_avpair_exists h323-ivr-in] } {
        set CustomerStatus [infotag get aaa_avpair h323-ivr-in]
foreach pairs [split $CustomerStatus]  {
                           set value_list [split $pairs :]
                           set key [lindex $value_list 0]
                           set value [lindex $value_list 1]
                           if { $key == "contractType" } {
                                set contractType $value
                           } 
                   }
于 2012-04-14T08:40:07.730 に答える