この機能を使用すると、JTAPI アプリケーションと CTIManager の間でセキュアな接続を通じて通信できます。CTIManager は JTAPI からの接続を受け入れるために TLS リスナー ソケットを実行します。TLS 接続を確立するには、クライアント認証のためにサーバが使用するクライアント証明書と、サーバ認証のためにクライアントが使用するサーバ証明書が必要です。
JTAPI は CAPF プロトコルを使用して CAPF に接続し、クライアント証明書(LSC)を取得します。これらの証明書は、CTL 内に存在する発行元の証明書を使用して認証できます。
CTI は、クライアント証明書ごとに作成されるプロバイダー接続の数を追跡します。アプリケーションでは、クライアント証明書を使用してプロバイダーを 1 つだけ作成できます。プロバイダーのインスタンスを複数作成した場合は、両方のプロバイダーが CTI
から切断され、アウト オブ サービスになります。JTAPI では、元のプロバイダーがイン サービスになるように CTI への接続を再試行しますが、プロバイダーの両方のインスタンスが引き続き存在する場合は、一定回数の再試行の後、プロバイダーが恒久的にシャットダウンされ、クライアント証明書は信頼のおけないものとしてマークされます。それ以降は、このクライアント証明書を使用してプロバイダーを作成しようとしても失敗します。アプリケーションでは、管理者に連絡して新しいインスタンス
ID を設定し、新しいクライアント証明書をダウンロードして操作を再開する必要があります。
JTAPI Preferences アプリケーションには、セキュリティ パラメータの設定とサーバ/クライアント証明書の更新を行うための GUI が用意されています。アプリケーション ユーザは、アプリケーション サーバの証明書をダウンロードしてインストールするために、JTAPI
Preferences で TFTP サーバの IP アドレス、CAPF サーバの IP アドレス、ユーザ名、インスタンス ID、AuthorizationString の各パラメータを設定する必要があります。
クライアント レイヤ オブジェクトに関する新しいインターフェイスが JTAPI クライアント アプリケーション用に追加されました。たとえば、CTIClientProperties クラスに関する JTAPI クライアント インターフェイスが用意されています。
CiscoJtapiProperties
JTAPI では、セキュリティ オプションを有効または無効にしてセキュアな TLS ソケット接続の確立に必要なクライアント/サーバ証明書をインストールするためのインターフェイスが CiscoJtapiProperties で提供されます。
com.cisco.jtapi.extensions
Interface CiscoJtapiProperties
getSecurityPropertyForInstance
public java.util.Hashtable getSecurityPropertyForInstance()
このインターフェイスは、User/InstanceID に対するすべてのパラメータが設定されたハッシュ テーブルを返します。ハッシュ テーブルは、次の"キーと値"のペアで設定されます。
キー
|
値
|
"user"
|
userName
|
文字列「instanceID」" "
|
InstanceID
|
文字列「Authcode」" "
|
authCode
|
文字列「CAPF」" "
|
capfServer の IP アドレス
|
文字列「CAPFPort」" "
|
capfServer の IP アドレス/ポート
|
文字列「TFTP」" "
|
tftpServer の IP アドレス
|
文字列「TFTPPort」" "
|
tftpServer の IP アドレス/ポート
|
文字列「CertPath」" "
|
証明書パス
|
文字列「securityOption」" "
|
セキュリティ オプションを表すブール値(有効なら true、無効なら false)。
|
文字列「certificateStatus」" "
|
証明書のステータスを表すブール値(更新済みなら true、未更新なら false)。
|
戻り値:上記の形式による、最初のユーザおよびインスタンスのハッシュ テーブル。
getSecurityPropertyForInstance
public java.util.Hashtable getSecurityPropertyForInstance
(java.lang.String user, java.lang.String instanceID)
このインターフェイスは、User/InstanceID に対するすべてのパラメータが設定されたハッシュ テーブルを返します。ハッシュ テーブルは、次の"キーと値"のペアで設定されます。
キー
|
値
|
"user"
|
userName
|
文字列「instanceID」" "
|
InstanceID
|
文字列「Authcode」" "
|
authCode
|
文字列「CAPF」" "
|
capfServer の IP アドレス
|
文字列「CAPFPort」" "
|
capfServer の IP アドレス/ポート
|
文字列「TFTP」" "
|
tftpServer の IP アドレス
|
文字列「TFTPPort」" "
|
tftpServer の IP アドレス/ポート
|
文字列「CertPath」" "
|
証明書パス
|
文字列「securityOption」" "
|
セキュリティ オプションを表すブール値(有効なら true、無効なら false)。
|
文字列「certificateStatus」" "
|
証明書のステータスを表すブール値(更新済みなら true、未更新なら false)。
|
パラメータ:
user
:セキュリティ パラメータを取得する UserName。
instanceID
:セキュリティ パラメータを取得する InstanceID。
戻り値:上記の形式のハッシュ テーブル。
setSecurityPropertyForInstance
public void setSecurityPropertyForInstance(java.lang.String user, java.lang.String instanceID,
java.lang.String authCode,
java.lang.String tftp,
java.lang.String tftpPort,
java.lang.String capf,
java.lang.String capfPort,
java.lang.String certPath,
boolean securityOption)
このインターフェイスを使用して、次のパラメータのセキュリティ プロパティを設定できます。
パラメータ:
user
:セキュリティ パラメータを更新するユーザ名。
instanceID
:セキュリティ パラメータを更新するインスタンス ID。
authCode
:認証文字列。
capf
:CAPF サーバの IP アドレス。
capfPort
:CAPF サーバが稼働中の IP アドレスのポート番号。これは CallManager のサービス パラメータで定義されます。値が null の場合、デフォルト値は 3804 です。
tftp
:TFTP サーバの IP アドレス。
tftpPort
:TFTP サーバが稼働している IP アドレス/ポート番号。Cisco Unified Communications Manager の TFTP サーバは通常、ポート 69 で動作します。値が null の場合、デフォルト値は 69 です。
certPath
:証明書をインストールする必要があるパス。
updateCertificate
public void updateCertificate(java.lang.String user,
java.lang.String instanceID,
java.lang.String authcode,
java.lang.String ccmTFTPAddress,
java.lang.String ccmTFTPPort,
java.lang.String ccmCAPFAddress,
java.lang.String ccmCAPFPort,
java.lang.String certificatePath)
このインターフェイスは、Cisco Unified Communications Manager Certificate Authority Proxy Function(CAPF)サーバに接続することによって、USER インスタンスの X.509 クライアント証明書を証明書ストアにインストールします。また、Cisco Unified Communications Manager TFTP サーバから証明書信頼リスト(CTL)をダウンロードします。
ユーザ クレデンシャルが無効な場合、このメソッドは PrivilegeViolationException をスローします。TFTP サーバまたは CAPF サーバのアドレスが不正な場合、このメソッドは InvalidArgumentException
をスローします。アプリケーションのすべてのインスタンスには、それぞれ固有のクライアント証明書が必要です。Cisco Unified Communications Manager データベースで複数の instanceID が設定されている場合、アプリケーションはこのインターフェイスを複数回実行してすべてのインスタンスのクライアント証明書をインストールすることができます。
事前条件:このインターフェイスを実行する際は、アプリケーションが Cisco Unified Communications Manager CAPF サーバおよび TFTP サーバとネットワーク接続されている必要があります。
事後条件:これによって、クライアント証明書とサーバ証明書が JTAPI アプリケーションのマシンにインストールされます。
パラメータ:
user
:Cisco Unified Communications Manager データベースで設定された CTI アプリケーションのユーザの名前。
instanceID
:Cisco Unified Communications Manager データベースに設定されたアプリケーション インスタンス ID。アプリケーションのすべてのインスタンスには、一意の ID が必要になります。
autuCode
:Cisco Unified Communications Manager データベースに設定された認証文字列。authCode は証明書を取得するために一度だけ使用できます。
ccmTFTPAddress
:Cisco Unified Communications Manager TFTP サーバの IP アドレス。
ccmTFTPPort
:Cisco Unified Communications Manager TFTP サーバが稼働している IP アドレス/ポート番号。Cisco Unified Communications Manager の TFTP サーバは通常、ポート 69 で動作します。null の場合、デフォルト値は 69 です。
ccmCAPFAddress
:Cisco Unified Communications Manager CAPF サーバの IP アドレス。
ccmCAPFPort
:Cisco Unified Communications Manager CAPF サーバが稼働しているポート番号で、Cisco Unified Communications Manager サービス パラメータで定義されています。値が null の場合、デフォルト値は 3804 です。
certificatePath
:証明書をインストールする必要があるディレクトリ パス。
例外:
InvalidArgumentException
:指定した TFTP サーバ アドレスまたは CAPF サーバ アドレスが無効な場合、この例外がスローされます。
PrivilegeViolationException
:指定した user、instanceID、または authCode が無効な場合、この例外がスローされます。
IsCertificateUpdated
public boolean IsCertificateUpdated
(java.lang.String user, java.lang.String instanceID)
このインターフェイスは、指定した user/instanceID のクライアントおよびサーバの証明書が更新されているかどうかに関する情報を提供します。
パラメータ:
user
:Cisco Unified Communications Manager Administration で定義された UserName。
instanceID
:指定したユーザ名のインスタンス ID。
戻り値:証明書が更新済みの場合は true、未更新の場合は false。
updateServerCertificate
public void updateServerCertificate(java.lang.String ccmTFTPAddress,
java.lang.String ccmTFTPPort,
java.lang.String ccmCAPFAddress,
java.lang.String ccmCAPFPort,
java.lang.String certificatePath)
このインターフェイスは、証明書パスに指定された X.509 サーバ証明書をインストールします。TFTP サーバのアドレスが不正な場合、このメソッドは InvalidArgumentException をスローします。自動アップデートを行うアプリケーションは、Cisco Unified Communications Manager との HTTP over Secure Sockets Layer(HTTPS)接続を呼び出す前に、このインターフェイスを使用してサーバ証明書を更新する必要があります。
事前条件:このインターフェイスを実行する際は、アプリケーションが TFTP サーバとネットワーク接続されている必要があります。
事後条件:これによって、サーバ証明書が JTAPI アプリケーションのマシンにインストールされます。
パラメータ:
ccmTFTPAddress
:Cisco CallManager TFTP サーバの IP アドレス。
ccmTFTPPort
:Cisco Unified Communications Manager TFTP サーバが稼働しているポート番号。
null の場合、デフォルト値は 69 です。
certificatePath:証明書をインストールするディレクトリ パス。
ccmCAPFAddress
:Cisco Unified Communications Manager CAPF サーバの IP アドレス。
ccmCAPFPort
:Cisco Unified Communications Manager CAPF サーバが稼働しているポート番号。
値が null の場合、デフォルト値は 3804 です。
例外:
InvalidArgumentException
:TFTP サーバのアドレスが無効な場合。