この章では、Sash ユーティリティの使用について説明します。この章は以下の節で構成されています。
Sapphire Shell (Sash) は、Oracle Database、XDMS (XML Document Management Server)、および RADIUS サーバに OWLCS ユーザをプロビジョニングするためのコマンドライン ユーティリティです。Sash のコマンドライン プロンプト (sash#
) から、または CommandService MBean を使用して、ユーザをプロビジョニングできます。
OWLCS デプロイメント用のユーザ プロビジョニング リポジトリとして Oracle Internet Database (OID) を使用する方法については、『Oracle Fusion Middleware Administrator's Guide for Oracle Internet Directory』を参照してください。
Linux システムでは、OWLCS を起動および停止するスクリプトと同じフォルダに、Sash 起動スクリプト (sash.sh
) があります。
OWLCS では、コマンドラインから Sash を起動するための、次のようなショートカットが提供されています。
sash.sh
(UNIX)
sash.bat
(Windows)
このショートカットは、OWLCS インストール先の Oracle/Middleware/as11gr1wlcs1/communications/sash/bin にあります。
デフォルトでは、Sash は OWLCS のローカル インスタンスに接続します。必要に応じて、このデフォルト動作を無効にし、OWLCS の外部インスタンスまたは Oracle WebLogic Server の別のインスタンスに Sash を接続できます。
Sash は、RMI を通して OWLCS サーバに接続します。例 7-1 は、ホスト IP アドレスが 10.0.0.234 であるサーバに Sash を接続する方法を示しています。
OWLCS に接続するときには、ユーザ名とパスワードの入力を求められます。ユーザ名は、OWLCS 管理者のユーザ名と同じです (OWLCSadmin)。パスワードも、OWLCS 管理者のパスワードと同じです。ログインに成功すると、Sash のコマンド プロンプト (sash
) が表示されます。ログインに失敗すると、エラー メッセージが表示されます。
Sash のコマンドは、2 つのグループに分かれています。1 つはシステム オブジェクトを作成、削除および更新するコマンドで、もう 1 つはシステムに情報を問い合わせるコマンドです。
注意 : 新しいアプリケーション使用方法を追加した場合、その新しいアプリケーション使用方法を使用するには、サーバを再起動する必要があります。既存のアプリケーション使用方法を削除した場合、削除したアプリケーション使用方法を完全にアンロードするには、サーバを再起動する必要があります (つまり、削除したアプリケーション使用方法は、サーバが再起動されるまではロードされた状態のままであり、アンロードされると完全に使用不可になります)。 ファイル内の sash コマンドの前にスペースがある場合、そのファイルは sash コマンドへの入力として使用されても機能しません。sash 入力ファイルでは、sash コマンドの前のスペースを必ず削除してください。 |
help
と入力すると、サーバで使用できるすべてのコマンドのリストが表示されます (表 7-1 を参照)。コマンドのリストは、サーバにデプロイされているコンポーネントによって異なります。
表 7-1 Sash のコマンド
コマンド | 説明 | エリアス | サブコマンド |
---|---|---|---|
|
認証に使用するプライベート通信 ID を追加および削除するコマンドです。 |
なし |
次のサブコマンドがあります。
|
|
プライベート ID に関連付けられたパブリック ID を追加および削除するコマンドです。 |
|
次のサブコマンドがあります。
|
|
ユーザ アカウント管理用のコマンドが含まれます。このコマンドを使用すると、アカウントを、アクティブ、ロック、または一時的アカウントとして設定できます。 |
なし |
次のサブコマンドがあります。
|
|
システム内のロールの種類とユーザ ロールを管理します。 |
なし |
サブコマンドには |
|
ロールの種類を管理します。 |
なし |
次のサブコマンドがあります。
|
|
ユーザ ロールを管理します。 |
なし |
次のサブコマンドがあります。
|
credentials |
資格を管理するコマンドです。 |
なし |
次のサブコマンドがあります。
|
|
ユーザの基本アカウントを作成できます。 |
なし |
なし。「identity add コマンドによるユーザの作成」を参照してください。 |
特定のコマンドのサブコマンドを表示するには、help <command>
と入力します。たとえば、account
コマンドに対して help
を入力すると (help account
)、account
コマンドで使用可能なサブコマンドの概要が表示されます (例 7-2 を参照)。
例 7-2 特定のコマンドのヘルプ情報の取得
*** Description **** Contains commands for management of user accounts. In an account you can set if the account is active, locked or if it perhaps should be a temporarily account. Aliases: [no aliases] Syntax: account Sub-commands: # Adds a new account to the system account add uid=<string> [ active=<true|false> ] [ locked=<true|false> ] [ accountExpiresAt=<accountExpiresAt> ] [ tempAccount=<true|false> ] [ description=<string> ] [ lockExpiresAt=<lockExpiresAt> ] [ currentFailedLogins=<integer> ] # Deletes an account account delete uid=<string> # Updates an account account update uid=<string> [ active=<true|false> ] [ locked=<true|false> ] [ accountExpiresAt=<accountExpiresAt> ] [ tempAccount=<true|false> ] [ description=<string> ] [ lockExpiresAt=<lockExpiresAt> ] [ currentFailedLogins=<integer> ] # Retrieve information about a particular account account info uid=<string>
help <command>
と入力して表示される情報には、コマンド グループの概要だけでなく、コマンドのエリアス (ある場合) も含まれます。たとえば、例 7-2 の account コマンドの概要では、[no aliase ]
(エリアスなし) と示されています。
注意 : account 、role 、role system 、role user 、privateIdentity 、publicIdentity 、および identity とともに使用する delete コマンドには、以下のエリアスがあります。
|
コマンドの中には、パラメータを必要とするものがあります。たとえば、help role system add
と入力すると、add
コマンドにはロールの名前と、オプションで説明を設定するためのコマンドが必要であることが示されます。
role system add name=<string> [description=<string>]
注意 : [description=<string>] のように、省略可能なコマンドは角括弧 [...] で囲まれています。 |
必須のパラメータを省略した場合、または認識できないパラメータを渡した場合は、警告が表示されます。
この節では、publicIdentity
コマンドと privateIdentity
コマンドについて、およびこれらと組み合わせて表 7-1 のサブコマンド add
、account
、role
、および credentials
を使用して、Oracle Database にユーザ アカウントをプロビジョニングする方法について説明します。
プライベート ID (privateIdentity
) は、特定の認証レルム内のユーザを一意に識別します。パブリック ID (publicIdentity
) は、デバイスを登録するためにユーザが入力する SIP アドレスです。このアドレスはユーザの AOR (Address of Record) であり、ユーザが相互に呼び出しを行う手段です。1 人のユーザが持つことのできるプライベート ID は 1 つだけですが、そのプライベート ID に対して複数のパブリック ID を関連付けることができます。
注意 : サードパーティのデータベース (RADIUS など) に対する認証を有効にする場合、Proxy Registrar および認証が必要な他のアプリケーションが正しく機能するためには、認証データを含み外部に格納されるユーザ アカウントが、プライベート ID と一致している必要があります。 |
ユーザを作成するには、最初に privateIdentity
コマンドと add privateId
サブコマンドを使用してプライベート ID を作成することでシステムにユーザを追加した後、publicIdentity
コマンドと add publicId
サブコマンドを使用してユーザに対するパブリック ID を追加します。
ユーザのプライベート ID とパブリック ID を作成した後は、account add uid
コマンドでユーザのアカウントを作成し、必要に応じてアカウントのステータス (アクティブやロックなど) を設定します。role
コマンドは、ロールベースのパーミッションに対するロール メンバーシップを設定します。role
コマンドを使用してユーザのパーミッションのレベルを設定した後、credentials
コマンドでユーザのレルムとパスワードを定義してユーザの資格を設定します。
この節では、表 7-1 で説明したコマンドを使用して alice という名前の OWLCS ユーザを作成することで、Sash コマンド プロンプト (sash
#、例 7-3 を参照) からユーザを作成する方法を示します。
次のようにして、privateIdentity
コマンドを使用してユーザを作成します。
privateIdentity add privateId=alice
SIP アドレスを入力して alice のパブリック ID を作成します。
publicIdentity add publicId=sip:alice@test.company.com privateId=alice
alice のアカウントを追加し、表 7-1 で説明した省略可能なコマンドのいずれかを使用してアカウントのステータスを設定します。alice に対してアクティブなアカウントを作成するには、次のように入力します。
account add uid=alice active=true
注意 : OWLCS バージョン 10.1.3.2 では、uid は小文字である必要があります。OWLCS バージョン 10.1.3.2 を使用してプロビジョニングされている Oracle Communicator ユーザも、ログイン時には小文字でアカウント名を入力する必要があります。OWLCS バージョン 10.1.3.3 および 10.1.3.4 では、大文字と小文字が混在した uid がサポートされています。ただし、Oracle Communicator ユーザがログインするには、プロビジョニングされたとおりにユーザ名を入力する必要があります。たとえば、uid が Alice と定義されているユーザは、Alice でログインする必要があります。10.1.3.2 でプロビジョニングされたユーザは、10.1.3.2 から 10.1.3.4 にアップグレードしても、引き続き小文字を使用してログインする必要があります。 |
role
コマンドを使用して、Location Service ユーザ グループに alice を追加します。これにより、Proxy Registrar のロケーション サービス検索に対するパーミッションを alice に付与します。
role user add uid=alice name="Location Service"
alice のユーザ認証資格を追加します。
credentials add uid=alice realm=test.company.com password=welcome1
RADIUS ログイン モジュールを使用して RADIUS サーバに対してユーザを認証するようにコンフィグレーションされているアプリケーションの場合、credentials
コマンドは必要ありません。これらのログイン モジュールの詳細については、第 5 章「セキュリティ機能の管理」を参照してください。
注意 : Sash を使用してユーザに認証資格を追加する前に、SIP Servlet Container MBean を使用してrealms をコンフィグレーションする必要もあります。 |
例 7-3 Sash コマンドライン プロンプトからのユーザの作成
sash# privateIdentity add privateId=alice sash# publicIdentity add publicId=sip:alice@test.company.com privateId=alice sash# account add uid=alice active=true sash# role user add uid=alice name="Location Service" sash# credentials add uid=alice realm=test.company.com password=welcome1
Command Service MBean の execute 操作を使用して Sash のコマンドを実行できます。Command Service MBean は subscrdataservcommandsear
アプリケーションで定義されています。
ユーザを作成するには、次の手順を実行します。
execute 操作を選択します。execute 操作の [操作] ページが表示されます。
[値] フィールドに privateIdentity add privateId=alice と入力します。
[起動操作] をクリックします。このプロセスをユーザ作成コマンドごとに繰り返します。たとえば、この後で publicIdentity
コマンドと account
コマンドを実行し、そのつど [起動操作] をクリックします。
identity add
コマンドを使用すると、1 つのコマンド文字列でユーザを作成できます。このコマンドは、privateIdentity
、publicIdentity
、account
、role
、および credentials
の各コマンドに対するエリアスであり、ユーザが SIP クライアント経由で OCMS に接続するために必要な最低限の情報を含む基本的なユーザ アカウントを簡単に作成できます。たとえば、このコマンドを使用してユーザ alice の基本アカウントを作成するには、コマンドラインから、または Command Service Mbean の execute 操作を使用して、次のように入力します。
identity add privateId=alice publicId=sip:sip.alice@company.com role="Location Service" realm=company.com password=welcome1
注意 : RADIUS システムに対してユーザを認証するようにコンフィグレーションされているアプリケーション (セキュリティ プロバイダとして RADIUS ログイン モジュールを使用するアプリケーション) の場合は、ユーザ アカウントを作成するコマンドは次のようになります。identity add privateId=alice publicId=sip:sip.alice@company.com role="Location Service" |
identity add
コマンドを使用して作成できるのは、基本ユーザ アカウントのみです。複数の publicId
を単一の privateId
と関連付けるような複雑な構成を必要とするアカウントの場合は、例 7-3 で示されているように、複数の Sash コマンドを使用して作成する必要があります。
XDMS をプロビジョニングするためのコマンドは、xcap
グループに含まれます。これらの各コマンドの前には xcap
が付きます。ユーザのプロビジョニングをサポートする xcap
グループの XDMS コマンドは、user
サブグループと applicationUsage
サブグループに含まれます。XDMS のプロビジョニングは、Sash プロンプトから、または Presence アプリケーションで提供されている CommandService MBean を使用して行うことができます。
Presence アプリケーションに登録された CommandService MBean で提供されている execute コマンドを使用して、XDMS をプロビジョニングすることができます。XDMS にアカウントをプロビジョニングするには、「Command Service MBean でのユーザの作成」で説明されている CommandService MBean の execute 操作を使用します。MBean 自体の詳細については、「Command Service (XDMS プロビジョニング)」を参照してください。
XDMS コマンドを使用して Sash プロンプトからユーザおよびアプリケーション使用方法をプロビジョニングするには、最初に Presence などの XMDS 利用アプリケーションに接続する必要があります。
Windows システムの場合、コマンド プロンプトから次のように入力します。
launch_sash.bat -a <application name>
Linux の場合、次のように入力します。
launch_sash.sh -a <application name>
たとえば、Windows システムで Presence アプリケーションに接続するには、次のようにします。
コマンド プロンプトで、Sash の実行可能ファイルが格納されている sbin
ディレクトリに移動します。このファイルは MIDDLEWARE_HOME/as11gr1wlcs/communications/sash/sbin にあります。
sash.bat -a presenceapplication
を使用して、Presence アプリケーションの名前を入力します。
プロンプトが表示されたら、OWLCS 管理者の名前とパスワードを使用して Sash にログインします。
Sash のコマンド プロンプトから、xcap user list
などの XDMS コマンドを入力します。
この節では、xcap
グループのコマンドを使用してユーザ アカウントとアプリケーション使用方法を管理する方法について説明します。
xcap user add
コマンドは、指定したユーザ名とアプリケーション使用方法で XDMS ユーザを追加します。たとえば、Sash プロンプトからユーザを追加するには、次のように入力します。
sash# xcap user add userName=<string> appusage=<string>
注意 : 自動的にユーザを作成するように XDMS がコンフィグレーションされている場合は、add コマンドを使用しないでください。XCAP のコンフィグレーションの詳細については、節 9.2.9「XCapConfigManager」を参照してください。 |
xcap user delete
コマンドは、指定したユーザ名の XDMS ユーザ (およびすべての既存ドキュメント) をアプリケーション使用方法から削除します。たとえば、Sash プロンプトからユーザを削除するには、次のように入力します。
sash# xcap user delete userName=<string> [ appusages=<string> ]
アプリケーション使用方法のパラメータ (appusages
) は省略可能です。アプリケーションの使用方法を指定しないと、ユーザはすべてのアプリケーション使用方法から削除されます。
xcap user appusages
コマンドは、指定したユーザに該当するすべてのアプリケーション使用方法を返します。ユーザに割り当てられているアプリケーション使用方法を確認するには、Sash プロンプトから次のように入力します。
sash# xcap user appusages userName=<string>
xcap user list
コマンドは、システム内のすべての XDMS ユーザを返します。オプションを指定して、特定のアプリケーション使用方法に対する XDMS ユーザのみを取得することもできます。
sash# xcap user list [ all=<true|false> ] [ appusage=<string> ]
省略可能な all
パラメータを設定しないと、結果の表示は最大 100 ユーザに限定されます。
XDMS アプリケーション使用方法のプロビジョニングのためのコマンドは、appusage
グループ (xcap appusage
) のものです。resource-lists_au.xml
、pidfmanipulation_au.xml
、および presrules_au.xml
という 3 種類のアプリケーションがサポートされています。
アプリケーション使用方法を追加するための SASH コマンドは、次のようになります。
xcap appusage create appusage=<application_usage> configurationFilename=<application>_au.xml
3 種類のアプリケーションを次の表に示します。
複数の操作を含む、よく実行されるタスクのためのスクリプトを作成できます。Sash を起動して、コマンドのリストを含むファイルを実行できます。スクリプトを有効にするために、Sash では次のようなコマンドライン フラグが提供されています。
-- exec
(短縮名 : -e
) : こ コマンドライン フラグの後に引用符で囲んだコマンドがある場合、Sash はそのコマンドを実行して終了します。
-- file
(短縮名 : -f
) : このコマンドライン フラグの後にファイル名がある場合、Sash はそのファイルを読み取り、入力された場合と同じようにファイル内のすべてのコマンドを実行し、終了します。
例 7-4 は、identity add
コマンドで定義されているユーザのグループを含む ocsm_users.txt という名前のテキスト ファイルです。Sash プロンプトから -f OWLCS_users.txt
と入力することで、これらのユーザをプロビジョニングできます。
例 7-4 テキスト ファイル (OWLCS_users.txt) からのユーザの作成
identity add privateId=candace publicId=sip:candace@doc.oracle.com role=user password=1234 realm=doc.oracle.com identity add privateId=deirdre publicId=sip:deirdre@doc.oracle.com role=user password=1234 realm=doc.oracle.com identity add privateId=evelyn publicId=sip:evelyn@doc.oracle.com role=user password=1234 realm=doc.oracle.com identity add privateId=frank publicId=sip:frank@doc.oracle.com role=user password=1234 realm=doc.oracle.com
-- nonewline
: このコマンドライン フラグは、実行されたコマンドから返されるメッセージから改行を取り除くことで、出力を解析しやすくします。このコマンドを使用すると解析は容易になりますが、手動でメッセージを読むのは難しくなります。