認可変更のサポート
Cisco Identity Based Networking Services(IBNS)は、セッションのクエリ、再認証、および終了、ポートバウンスとポートのシャットダウン、およびサービステンプレートのアクティブ化と非アクティブ化のための RADIUS 認可変更(CoA)コマンドをサポートしています。このモジュールは、Cisco IBNS でサポートされている CoA コマンドについて説明します。
CoA サポートに関する情報
RADIUS 認可変更のサポート
Cisco IOS ソフトウェアは、RFC 5176 で定義されている RADIUS CoA の拡張をサポートします。この拡張は、一般に、外部 AAA またはポリシー サーバーからのセッションのダイナミックな再構成を可能にするプッシュ モデルで使用されます。セッションの特定、セッションの終了、ホストの再認証、ポートのシャットダウン、およびポート バウンスでは、セッションごとの CoA 要求がサポートされます。このモデルは、次のように、1 つの要求(CoA-Request)と 2 つの考えられる応答コードで構成されます。
-
CoA acknowledgement(ACK)[CoA-ACK]
-
CoA nonacknowledgement(NAK)[CoA-NAK]
要求は CoA クライアント(通常は AAA またはポリシー サーバー)から開始されて、リスナーとして動作するデバイスに転送されます。
以下の表は、Cisco IBNS でサポートされている RADIUS CoA コマンドとベンダー固有属性(VSA)を示しています。すべての CoA コマンドには、デバイスと CoA クライアント間のセッション ID が含まれている必要があります。
CoA コマンド |
シスコの VSA |
---|---|
Activate service |
Cisco:Avpair=“subscriber:command=activate-service” Cisco:Avpair=“subscriber:service-name=<service-name>” Cisco:Avpair=“subscriber:precedence=<precedence-number>” Cisco:Avpair=“subscriber:activation-mode=replace-all” |
Deactivate service |
Cisco:Avpair=“subscriber:command=deactivate-service” Cisco:Avpair=“subscriber:service-name=<service-name>” |
Bounce host port |
Cisco:Avpair="subscriber:command=bounce-host-port" |
Disable host port |
Cisco:Avpair="subscriber:command=disable-host-port" |
Session query |
Cisco:Avpair=“subscriber:command=session-query” |
Session reauthenticate |
Cisco:Avpair="subscriber:command=reauthenticate" Cisco:Avpair=“subscriber:reauthenticate-type=last” または Cisco:Avpair=“subscriber:reauthenticate-type=rerun” |
Session terminate |
これは、VSA を必要としない、標準の接続解除要求です。 |
Interface template |
Cisco:AVpair="interface-template-name=<interfacetemplate>" |
セッションの識別
特定のセッションに対する接続解除および CoA 要求の場合、デバイスは次の 1 つまたは複数の属性に基づいてセッションを検出します。
-
Acct-Session-Id(IETF 属性 #44)
-
Audit-Session-Id VSA(シスコの VSA)
-
Calling-Station-Id(ホスト MAC アドレスを含む IETF 属性 #31)
-
次のいずれかの IPv6 属性。
-
Framed-IPv6-Prefix(IETF 属性 #97)および Framed-Interface-Id(IETF 属性 #96)。ともに RFC 3162 に従った完全な IPv6 アドレスを作成する
-
Framed-IPv6-Address
-
-
プレーン IP アドレス(IETF 属性 #8)
メッセージに複数のセッション ID 属性が含まれる場合は、すべての属性がセッションと一致する必要があります。一致しない場合、デバイスは、エラー コードが Invalid Attribute Value の Disconnect-NAK または CoA-NAK を返します。
特定の適用ポリシーを対象とする CoA 要求の場合、上記のセッション ID 属性のいずれかがメッセージに含まれていると、デバイスはエラー コードが Invalid Attribute Value の CoA-NAK を返します。
CoA サービスのアクティブ化コマンド
CoA サービスのアクティブ化コマンドを使用して、セッションでサービス テンプレートをアクティブ化することができます。AAA サーバーは次の VSA を使用して、標準の CoA 要求メッセージで要求を送信します。
Cisco:Avpair=“subscriber:command=activate-service”
Cisco:Avpair=“subscriber:service-name=<service-name>”
Cisco:Avpair=“subscriber:precedence=<precedence-number>”
Cisco:Avpair=“subscriber:activation-mode=replace-all”
このコマンドはセッション指向であるため、セッションの識別 セクションに示す 1 つ以上のセッション ID 属性とともに使用する必要があります。デバイスがセッションを検出できない場合、デバイスは Session Context Not Found エラーコード属性を含む CoA-NAK メッセージを返します。デバイスは、セッションを検出すると、ホスティング ポートに対するテンプレートのアクティブ化の操作を開始し、CoA-ACK が返されます。テンプレートのアクティブ化が失敗すると、エラーコード属性が適切なメッセージに設定された CoA-NAK メッセージが返されます。
デバイスが CoA-ACK をクライアントに返す前にデバイスに障害が発生した場合、クライアントから要求が再送信されると、新しいアクティブ デバイス上でそのプロセスが繰り返されます。デバイスが CoA-ACK メッセージをクライアントに返した後でデバイスに障害が発生したが、操作が完了していない場合、その操作は新しいアクティブ デバイスで再開されます。
CoA サービスの非アクティブ化コマンド
CoA サービスの非アクティブ化コマンドを使用して、セッションでサービス テンプレートを非アクティブ化することができます。AAA サーバーは次の VSA を使用して、標準の CoA 要求メッセージで要求を送信します。
Cisco:Avpair=“subscriber:command=deactivate-service”
Cisco:Avpair=“subscriber:service-name=<service-name>”
このコマンドはセッション指向であるため、セッションの識別 セクションに示す 1 つ以上のセッション ID 属性とともに使用する必要があります。デバイスがセッションを検出できない場合、デバイスは Session Context Not Found エラーコード属性を含む CoA-NAK メッセージを返します。デバイスは、セッションを検出すると、ホスティング ポートに対するテンプレートの非アクティブ化操作を開始し、CoA-ACK が返されます。テンプレートの非アクティブ化が失敗すると、エラー コード属性が該当するメッセージに設定された CoA-NAK メッセージが返されます。
デバイスが CoA-ACK をクライアントに返す前にデバイスに障害が発生した場合、クライアントから要求が再送信されると、新しいアクティブ デバイス上でそのプロセスが繰り返されます。デバイスが CoA-ACK メッセージをクライアントに返した後でデバイスに障害が発生したが、操作が完了していない場合、その操作は新しいアクティブ デバイスで再開されます。
CoA Bounce Host Port コマンド
CoA Bounce Host Port コマンドは、セッションを終了し、ポートをバウンスします(リンクダウンイベントを開始し、その後リンクアップイベントを開始します)。AAA サーバーは次の VSA を含む標準の CoA 要求メッセージで要求を送信します。
Cisco:Avpair="subscriber:command=bounce-host-port"
このコマンドはセッション指向であるため、セッションの識別 セクションに示す 1 つ以上のセッション ID 属性とともに使用する必要があります。セッションを検出できない場合、デバイスは Session Context Not Found エラーコード属性を含む CoA-NAK メッセージを返します。このセッションがある場合、デバイスはホストポートを 10 秒間無効化し、再び有効化(ポートバウンス)して、CoA-ACK を返します。
デバイスが CoA-ACK をクライアントに返す前にデバイスに障害が発生した場合、クライアントから要求が再送信されると、新しいアクティブ デバイス上でそのプロセスが繰り返されます。デバイスが CoA-ACK メッセージをクライアントに返した後でデバイスに障害が発生したが、操作が完了していない場合、その操作は新しいアクティブ デバイスで再開されます。
CoA bounce port コマンドは、承認の変更後にエンドポイントが新しい IP アドレスを取得する必要がある場合の最後の手段として役立ちます。このコマンドは、DHCP プロセスの再起動をエンドポイントに指示する唯一の方法です。この状況は、VLAN の変更があり、この認証ポートに関する変化を検出するメカニズムがないデバイス(プリンタなど)がエンドポイントの場合に発生する可能性があります。このコマンドにより、認証ポートでリンクのフラップが発生します。その結果、このポートに接続している 1 つまたは複数のホストから、DHCP の再ネゴシエーションが開始されます。
CoA Disable Host Port コマンド
CoA Disable Host Port コマンドを実行すると、セッションをホストしている認証ポートが管理的にシャットダウンされ、その結果、セッションが終了します。AAA サーバーは次の VSA を含む標準の CoA 要求メッセージで要求を送信します。
Cisco:Avpair="subscriber:command=disable-host-port"
このコマンドはセッション指向であるため、セッションの識別 セクションに示す 1 つ以上のセッション ID 属性とともに使用する必要があります。セッションを検出できない場合、デバイスは Session Context Not Found エラーコード属性を含む CoA-NAK メッセージを返します。デバイスは、セッションを検出すると、ホスティング ポートを無効にし、CoA-ACK メッセージを返します。
デバイスが CoA-ACK をクライアントに返す前にデバイスに障害が発生した場合、クライアントから要求が再送信されると、新しいアクティブ デバイス上でそのプロセスが繰り返されます。デバイスが CoA-ACK メッセージをクライアントに返した後でデバイスに障害が発生したが、操作が完了していない場合、その操作は新しいアクティブ デバイスで再開されます。
CoA セッション クエリー コマンド
CoA セッション クエリー コマンドは、加入者セッションに関するサービス情報を要求します。AAA サーバーは次の VSA を含む標準の CoA 要求メッセージで要求を送信します。
Cisco:Avpair=“subscriber:command=session-query”
このコマンドはセッション指向であるため、セッションの識別 セクションに示す 1 つ以上のセッション ID 属性とともに使用する必要があります。デバイスがセッションを検出できない場合、デバイスは Session Context Not Found エラーコード属性を含む CoA-NAK メッセージを返します。デバイスは、セッションを検出すると、セッションに対してセッション クエリー操作を実行し、CoA-ACK メッセージを返します。
デバイスが CoA-ACK をクライアントに返す前にデバイスに障害が発生した場合、クライアントから要求が再送信されると、新しいアクティブ デバイス上でそのプロセスが繰り返されます。デバイスが CoA-ACK メッセージをクライアントに返した後でデバイスに障害が発生したが、操作が完了していない場合、その操作は新しいアクティブ デバイスで再開されます。
CoA セッションの再認証コマンド
セッションの認証を開始するために、AAA サーバーは次の VSA を含む標準の CoA 要求メッセージを送信します。
Cisco:Avpair="subscriber:command=reauthenticate"
Cisco:Avpair=“subscriber:reauthenticate-type=<last | rerun>”
「reauthenticate-type」は、CoA 再認証要求が、該当のセッションで最後に成功した認証方式を使用するか、認証プロセス全体を再実行するかどうかを指定します。
次のルールが適用されます。
-
「subscriber:command=reauthenticate」は、再認証をトリガーするために必要です。
-
「subscriber:reauthenticate-type」が指定されていない場合、デフォルトの動作は該当のセッションで最後に成功した認証方式の再実行です。この方式での再認証が成功すると、すべての古い承認データが、再認証された承認データで置き換えられます。
-
「subscriber:reauthenticate-type」は「subscriber:command=reauthenticate」とともに含まれている場合にのみ有効です。別の CoA コマンドに含まれている場合、VSA は暗黙的に無視されます。
デバイスが CoA-ACK をクライアントに返す前にデバイスに障害が発生した場合、クライアントから要求が再送信されると、新しいアクティブ デバイス上でそのプロセスが繰り返されます。デバイスが CoA-ACK メッセージをクライアントに返した後でデバイスに障害が発生したが、操作が完了していない場合、その操作は新しいアクティブ デバイスで再開されます。
CoA セッションの終了コマンド
CoA 接続解除要求コマンドは、ホスト ポートを無効にせずにセッションを終了します。このコマンドによって、指定したホストのオーセンティケータ ステート マシンが再初期化されますが、ホストのネットワークへのアクセスは制限されません。セッションを検出できない場合、デバイスは Session Context Not Found エラーコード属性を含む Disconnect-NAK メッセージを返します。セッションが見つかった場合、デバイスはセッションを終了します。セッションが完全に削除されると、デバイスは Disconnect-ACK を返します。
デバイスが CoA-ACK をクライアントに返す前にデバイスに障害が発生した場合、クライアントから要求が再送信されると、新しいアクティブ デバイス上でそのプロセスが繰り返されます。
ホストのネットワークへのアクセスを制限するには、Cisco:Avpair=“subscriber:command=disable-host-port” VSA を含む CoA 要求を使用します。このコマンドは、ホストがネットワーク上で問題を起こしていることを把握し、ホストのネットワーク アクセスを即座にブロックする必要がある場合に便利です。ポートのネットワーク アクセスを復元する場合は、非 RADIUS メカニズムを使用して再び有効にします。
CoA サポートの機能情報
リリース |
機能名 |
機能情報 |
---|---|---|
Cisco IOS XE Fuji 16.9.2 |
Change of Authorization |
次を開始する CoA 要求がサポートされています。
これらの VSA は、AAA サーバーからの標準 CoA 要求メッセージで送信されます。 |