[要約] 要約:RFC 3244は、Microsoft Windows 2000のKerberosパスワード変更およびパスワード設定プロトコルに関する仕様を提供しています。 目的:このRFCの目的は、Kerberosプロトコルを使用してWindows 2000システムでパスワードの変更と設定を行うための標準化とガイドラインを提供することです。

Network Working Group                                           M. Swift
Request for Comments: 3244                      University of Washington
Category: Informational                                       J. Trostle
                                                           Cisco Systems
                                                               J. Brezak
                                                               Microsoft
                                                           February 2002
        

Microsoft Windows 2000 Kerberos Change Password and Set Password Protocols

Microsoft Windows2000 Kerberosパスワードを変更してパスワードプロトコルを設定します

Status of this Memo

本文書の位置付け

This memo provides information for the Internet community. It does not specify an Internet standard of any kind. Distribution of this memo is unlimited.

このメモは、インターネットコミュニティに情報を提供します。いかなる種類のインターネット標準を指定しません。このメモの配布は無制限です。

Copyright Notice

著作権表示

Copyright (C) The Internet Society (2002). All Rights Reserved.

Copyright(c)The Internet Society(2002)。無断転載を禁じます。

Abstract

概要

This memo specifies Microsoft's Windows 2000 Kerberos change password and set password protocols. The Windows 2000 Kerberos change password protocol interoperates with the original Kerberos change password protocol. Change password is a request reply protocol that includes a KRB_PRIV message that contains the new password for the user.

このメモは、MicrosoftのWindows 2000 Kerberos変更パスワードを指定し、パスワードプロトコルを設定します。Windows 2000 Kerberosの変更パスワードプロトコルは、元のKerberos変更パスワードプロトコルと相互運用します。パスワードの変更は、ユーザーの新しいパスワードを含むKRB_PRIVメッセージを含むリクエスト応答プロトコルです。

1. Introduction
1. はじめに

Microsoft's Windows 2000 Kerberos change password protocol interoperates with the original Kerberos change password protocol. Change password is a request reply protocol that includes a KRB_PRIV message that contains the new password for the user. The original change password protocol does not allow an administrator to set a password for a new user. This functionality is useful in some environments, and this proposal extends the change password protocol to allow password setting. The changes are: adding new fields to the request message to indicate the principal which is having its password set, not requiring the initial flag in the service ticket, using a new protocol version number, and adding three new result codes.

MicrosoftのWindows 2000 Kerberosの変更パスワードプロトコルは、元のKerberos変更パスワードプロトコルと相互運用します。パスワードの変更は、ユーザーの新しいパスワードを含むKRB_PRIVメッセージを含むリクエスト応答プロトコルです。元の変更パスワードプロトコルでは、管理者が新しいユーザーのパスワードを設定することはできません。この機能は一部の環境で有用であり、この提案はパスワードの設定を可能にするために変更パスワードプロトコルを拡張します。変更は、リクエストメッセージに新しいフィールドを追加して、パスワードセットを備えているプリンシパルを示し、サービスチケットの最初のフラグを必要とせず、新しいプロトコルバージョン番号を使用し、3つの新しい結果コードを追加することを示します。

2. The Protocol
2. プロトコル

The service accepts requests on UDP port 464 and TCP port 464 as well. The protocol consists of a single request message followed by a single reply message. For UDP transport, each message must be fully contained in a single UDP packet.

このサービスは、UDPポート464およびTCPポート464のリクエストを受け入れます。プロトコルは、単一のリクエストメッセージに続いて単一の返信メッセージで構成されています。UDPトランスポートの場合、各メッセージは1つのUDPパケットに完全に含める必要があります。

For TCP transport, there is a 4 octet header in network byte order that precedes the message and specifies the length of the message.

TCPトランスポートの場合、メッセージの前に4個のOctetヘッダーがネットワークバイト順序にあり、メッセージの長さを指定します。

Request Message

メッセージを要求します

     0                   1                   2                   3
     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |         message length        |    protocol version number    |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |          AP_REQ length        |         AP_REQ data           /
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    /                        KRB-PRIV message                       /
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        

All 16 bit fields are in big-endian order.

すべての16ビットフィールドは、エンディアンの順序です。

message length field: contains the number of bytes in the message including this field.

メッセージの長さフィールド:このフィールドを含むメッセージ内のバイト数が含まれています。

protocol version number: contains the hex constant 0xff80 (big-endian integer).

プロトコルバージョン番号:16進定数0xff80(ビッグエンディアン整数)が含まれています。

AP-REQ length: length of AP-REQ data, in bytes. If the length is zero, then the last field contains a KRB-ERROR message instead of a KRB-PRIV message.

AP-REQの長さ:バイト単位のAP-REQデータの長さ。長さがゼロの場合、最後のフィールドにはKRB-PRIVメッセージの代わりにKRB-Errorメッセージが含まれます。

AP-REQ data: (see [1]) The AP-REQ message must be for the service principal kadmin/changepw@REALM, where REALM is the REALM of the user who wishes to change/set his password. The authenticator in the AP-REQ must include a subsession key. (NOTE: The subsession key must be pseudo-randomly generated and must never be reused for multiple authenticators.) To enable setting of passwords, it is not required that the initial flag be set in the Kerberos service ticket.

AP-REQデータ:( [1]を参照)AP-REQメッセージは、サービスプリンシパルKADMIN/CHANGEPW@REALMである必要があります。ここで、Realmはパスワードを変更/設定したいユーザーの領域です。AP-REQの認証機には、サブセッションキーを含める必要があります。(注:サブセッションキーは、擬似ランダムに生成されている必要があり、複数の認証者に再利用してはなりません。)パスワードの設定を可能にするには、初期フラグをKerberosサービスチケットに設定する必要はありません。

KRB-PRIV message (see [1]) This user-data field in the KRB-PRIV message is encrypted using the subkey from the authenticator in the AP-REQ data. The usec and seq-number fields of the KRB_PRIV message are present and have the same value as the seq-number field in the authenticator from the AP_REQ message (the seq-number in the authenticator will be present). The server ignores the optional r-address field in the KRB_PRIV message, if it is present.

KRB-PRIVメッセージ([1]を参照)KRB-PRIVメッセージのこのユーザーDATAフィールドは、AP-REQデータのAuthenticatorのサブキーを使用して暗号化されます。KRB_PRIVメッセージのUSECおよびSEQ番号フィールドが存在し、AP_REQメッセージの認証機のSEQ-NUMBERフィールドと同じ値を持っています(AuthenticatorのSEQ番号が存在します)。サーバーは、存在する場合、krb_privメッセージのオプションのr-addressフィールドを無視します。

The user-data component of the message consists of the following ASN.1 structure encoded as an OCTET STRING:

メッセージのユーザーデータコンポーネントは、Octet文字列としてエンコードされた次のASN.1構造で構成されています。

      ChangePasswdData ::=  SEQUENCE {
                          newpasswd[0]   OCTET STRING,
                          targname[1]    PrincipalName OPTIONAL,
                          targrealm[2]   Realm OPTIONAL
                          }
        

The server must verify the AP-REQ message, check whether the client principal in the ticket is authorized to set/change the password (either for that principal, or for the principal in the targname field if present), and decrypt the new password. The server also checks whether the initial flag is required for this request, replying with status 0x0007 if it is not set and should be. An authorization failure is cause to respond with status 0x0005. For forward compatibility, the server should be prepared to ignore fields after targrealm in the structure that it does not understand.

サーバーは、AP-REQメッセージを確認し、チケットのクライアントプリンシパルがパスワードを設定/変更することが許可されているかどうかを確認する必要があります(そのプリンシパル、または存在する場合はTargnameフィールドのプリンシパルに対して)、新しいパスワードを復号化する必要があります。また、サーバーは、この要求に最初のフラグが必要かどうかを確認し、設定されていない場合はステータス0x0007で返信します。許可の失敗は、ステータス0x0005で応答する原因です。順方向の互換性のために、サーバーは、理解できない構造内のTargrealm後のフィールドを無視するように準備する必要があります。

The newpasswd field contains the cleartext password, and the server will apply any local policy checks including password policy checks. The server then generates the appropriate keytypes from the password and stores them in the KDC database. If all goes well, status 0x0000 is returned to the client in the reply message (see below).

NewPassWDフィールドにはClearTextパスワードが含まれており、サーバーはパスワードポリシーチェックを含むローカルポリシーチェックを適用します。次に、サーバーはパスワードから適切なキータイプを生成し、KDCデータベースに保存します。すべてがうまくいけば、ReplyメッセージでStatus 0x0000がクライアントに返されます(以下を参照)。

Reply Message

返信メッセージ

     0                   1                   2                   3
     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |         message length        |    protocol version number    |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |          AP_REP length        |         AP-REP data           /
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    /                         KRB-PRIV message                      /
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        

All 16 bit fields are in big-endian order.

すべての16ビットフィールドは、エンディアンの順序です。

message length field: contains the number of bytes in the message including this field.

メッセージの長さフィールド:このフィールドを含むメッセージ内のバイト数が含まれています。

protocol version number: contains the hex constant 0x0001 (big-endian integer). (The reply message has the same format as the original change password protocol.)

プロトコルバージョン番号:HEX定数0x0001(Big-Endian Integer)が含まれています。(返信メッセージには、元の変更パスワードプロトコルと同じ形式があります。)

AP-REP length: length of AP-REP data, in bytes. If the length is zero, then the last field contains a KRB-ERROR message instead of a KRB-PRIV message.

AP-REPの長さ:バイト単位のAP-REPデータの長さ。長さがゼロの場合、最後のフィールドにはKRB-PRIVメッセージの代わりにKRB-Errorメッセージが含まれます。

AP-REP data: the AP-REP is the response to the AP-REQ in the request packet.

AP-REPデータ:AP-REPは、リクエストパケットのAP-REQへの応答です。

KRB-PRIV message: This KRB-PRIV message must be encrypted with the subsession key from the authenticator in the AP-REQ data.

KRB-PRIVメッセージ:このKRB-PRIVメッセージは、AP-REQデータのAuthenticatorのサブセッションキーで暗号化する必要があります。

The server will respond with a KRB-PRIV message unless it cannot decode the client AP-REQ or KRB-PRIV message, in which case it will respond with a KRB-ERROR message. NOTE: Unlike change password version 1, the KRB-ERROR message will be sent back without any encapsulation.

サーバーは、クライアントAP-REQまたはKRB-PRIVメッセージをデコードできない場合を除き、KRB-PRIVメッセージで応答します。その場合、KRB-Errorメッセージで応答します。注:パスワードバージョン1の変更とは異なり、KRB-Errorメッセージはカプセル化なしで送信されます。

The user-data component of the KRB-PRIV message, or e-data component of the KRB-ERROR message, consists of the following data.

KRB-PRIVメッセージのユーザーデータコンポーネント、またはKRB-Errorメッセージのe-DATAコンポーネントは、次のデータで構成されています。

     0                   1                   2                   3
     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |          result code          |        result string          /
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        

result code (16 bits) (result codes 0-4 are from the original change password protocol):

結果コード(16ビット)(結果コード0〜4は、元の変更パスワードプロトコルからのものです):

The result code must have one of the following values (big-endian integer):

結果コードには、次の値のいずれか(ビッグエンディアン整数)が必要です。

KRB5_KPASSWD_SUCCESS 0 request succeeds (This value is not allowed in a KRB-ERROR message)

krb5_kpasswd_success 0リクエストの成功(この値はkrb-errorメッセージで許可されていません)

KRB5_KPASSWD_MALFORMED 1 request fails due to being malformed

KRB5_KPASSWD_MALFORMED 1リクエストは、奇形があるため失敗します

KRB5_KPASSWD_HARDERROR 2 request fails due to "hard" error in processing the request (for example, there is a resource or other problem causing the request to fail)

KRB5_KPASSWD_HARDERROR 2リクエストがリクエストの処理において「ハード」エラーのために失敗します(たとえば、リクエストを失敗させるリソースやその他の問題があります)

KRB5_KPASSWD_AUTHERROR 3 request fails due to an error in authentication processing

KRB5_KPASSWD_AUTHHERROR 3認証処理のエラーのためにリクエストが失敗

KRB5_KPASSWD_SOFTERROR 4 request fails due to a "soft" error in processing the request

krb5_kpasswd_softerror 4リクエストの処理における「ソフト」エラーのためにリクエストが失敗します

KRB5_KPASSWD_ACCESSDENIED 5 requestor not authorized

krb5_kpasswd_accessdenied 5 requestorは許可されていません

KRB5_KPASSWD_BAD_VERSION 6 protocol version unsupported

krb5_kpasswd_bad_version 6プロトコルバージョンはサポートされていません

KRB5_KPASSWD_INITIAL_FLAG_NEEDED 7 initial flag required

krb5_kpasswd_initial_flag_needed 7初期フラグが必要です

0xFFFF is returned if the request fails for some other reason. Although only a few non-zero result codes are specified here, the client should accept any non-zero result code as indicating failure.

他の理由でリクエストが失敗した場合、0xffffが返されます。ここでは、ゼロ以外の結果コードのみが指定されていますが、クライアントはゼロ以外の結果コードを障害を示すものとして受け入れる必要があります。

result string:

結果文字列:

This field contains information which might be useful to the user, such as feedback about policy failures. The string is encoded in UTF-8. It may be omitted if the server does not wish to include it. If it is present, the client will display the string to the user.

このフィールドには、ポリシーの障害に関するフィードバックなど、ユーザーにとって有用な情報が含まれています。文字列はUTF-8でエンコードされています。サーバーがそれを含めることを望まない場合は、省略される場合があります。それが存在する場合、クライアントはユーザーに文字列を表示します。

3. Security Considerations
3. セキュリティに関する考慮事項

Password policies should be enforced to make sure that users do not pick passwords (for change password) that are vulnerable to brute force password guessing attacks. An administrator who is authorized to set other principal's passwords is highly trusted and must also carefully protect his/her own credentials.

パスワードポリシーは、ユーザーがブルートフォースのパスワード推測攻撃に対して脆弱なパスワード(パスワードを変更する場合)を選択しないことを確認するために強制する必要があります。他のプリンシパルのパスワードを設定する権限がある管理者は非常に信頼されており、自分の資格情報を慎重に保護する必要があります。

4. References
4. 参考文献

[1] Kohl, J. and C. Neuman, "The Kerberos Network Authentication Service (V5)", RFC 1510, September 1993.

[1] Kohl、J。およびC. Neuman、「The Kerberos Network Authentication Service(V5)」、RFC 1510、1993年9月。

5. Authors' Addresses
5. 著者のアドレス

Mike Swift University of Washington Seattle, WA

ワシントン州ワシントン大学シアトルのマイク・スウィフト大学

   EMail: mikesw@cs.washington.edu
        

Jonathan Trostle Cisco Systems 170 W. Tasman Dr. San Jose, CA 95134

ジョナサントロストルシスコシステム170 W.タスマン博士サンノゼ、カリフォルニア95134

   EMail: john3725@world.std.com
        

John Brezak Microsoft 1 Microsoft Way Redmond, WA 98052

John Brezak Microsoft 1 Microsoft Way Redmond、WA 98052

   EMail: jbrezak@microsoft.com
        
6. 完全な著作権声明

Copyright (C) The Internet Society (2002). All Rights Reserved.

Copyright(c)The Internet Society(2002)。無断転載を禁じます。

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English.

このドキュメントと翻訳は他の人にコピーされて提供される場合があり、それについてコメントまたは説明する派生作品、またはその実装を支援することができます。、上記の著作権通知とこの段落がそのようなすべてのコピーとデリバティブ作品に含まれている場合。ただし、このドキュメント自体は、インターネット協会や他のインターネット組織への著作権通知や参照を削除するなど、いかなる方法でも変更できない場合があります。インターネット標準プロセスに従うか、英語以外の言語に翻訳するために必要な場合に従う必要があります。

The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns.

上記の限られた許可は永続的であり、インターネット社会またはその後継者または譲受人によって取り消されることはありません。

This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

この文書と本書に含まれる情報は、「現状」に基づいて提供されており、インターネット社会とインターネットエンジニアリングタスクフォースは、ここにある情報の使用が行われないという保証を含むがこれらに限定されないすべての保証を否認します。特定の目的に対する商品性または適合性の権利または黙示的な保証を侵害します。

Acknowledgement

謝辞

Funding for the RFC Editor function is currently provided by the Internet Society.

RFCエディター機能の資金は現在、インターネット協会によって提供されています。