oauth-validators.sgmlのPostgreSQL 18.0対応です。#3583
oauth-validators.sgmlのPostgreSQL 18.0対応です。#3583tatsuo-ishii wants to merge 5 commits intopgsql-jp:doc_ja_18from
Conversation
とりあえず機械翻訳タグを削除しただけのdraft prです。 これでまずAIレビューをしてもらうテスト。
と思ったら、ReviewersのsuggestionにCopilotが出てきません。権限が足りないのですかね? |
There was a problem hiding this comment.
Pull request overview
This pull request updates the Japanese documentation file oauth-validators.sgml for PostgreSQL 18.0 compatibility. The PR's stated purpose is to remove machine translation tags ("《機械翻訳》") as a draft for AI review testing.
Changes:
- Removal of "《機械翻訳》" (Machine Translation) prefixes from 37 lines of Japanese documentation
- No changes to the actual translation content or English source text
- Maintains the same SGML structure and formatting
Comments suppressed due to low confidence (3)
doc/src/sgml/oauth-validators.sgml:144
- この段落は文が分断されていて意味が通りません。「次に、バリデータは保証を実行する必要があります。これは、エンドユーザがクライアントパーミッションをアクセスに提供したことを意味します。サーバはに代わります。これには通常、トークンにアサインされたスコープをチェックすることが含まれます。makeは現在HBAパラメータのカバーデータベースアクセスを確認します。」は複数の誤訳を含んでいます。英文の正しい翻訳は「次に、バリデータはエンドユーザがクライアントに対してサーバへのアクセス許可を与えたことを確認する必要があります。これには通常、トークンに割り当てられたスコープをチェックして、現在のHBAパラメータでのデータベースアクセスがカバーされていることを確認することが含まれます。」とすべきです。
次に、バリデータは保証を実行する必要があります。
これは、エンドユーザがクライアントパーミッションをアクセスに提供したことを意味します。
サーバはに代わります。
これには通常、トークンにアサインされたスコープをチェックすることが含まれます。
makeは現在HBAパラメータのカバーデータベースアクセスを確認します。
doc/src/sgml/oauth-validators.sgml:295
- この段落は不完全で意味が通りません。「一般的に、モジュールは通常、COMMERRORレベルと結果で問題を検証する必要があります。代わりはERROR/FATALスタックを巻き戻すためにを使用して、認証されていないクライアントへの情報の漏洩を回避します。ログ」は誤訳です。英文の正しい翻訳は「一般的に、モジュールは検証の問題をCOMMERRORレベルでログに記録し、通常通り戻る必要があります。ERROR/FATALを使用してスタックを巻き戻すのではなく、認証されていないクライアントへの情報漏洩を避けるためです。」とすべきです。また文末の「ログ」は不要です。
一般的に、モジュールは通常、<symbol>COMMERROR</symbol>レベルと結果で問題を検証する必要があります。
代わりは<symbol>ERROR</symbol>/<symbol>FATAL</symbol>スタックを巻き戻すためにを使用して、認証されていないクライアントへの情報の漏洩を回避します。
ログ
doc/src/sgml/oauth-validators.sgml:581
- 「通常、result->authn_idユーザ名前は、ユーザがロギングとしているロールを正確にマッチする必要があります。(この動作はユーザマップで変更できます。)しかし、delegate_ident_mappingオンでHBAルールに対して認証する場合、PostgreSQLはresult->authn_idの値をまったくチェックしません。このケースでは、トークンが指示されたroleの下でユーザがログに対して十分な権限を持つかどうかは、バリデータから保証に委ねられます」は複数の誤訳を含んでいます。正しくは「通常、result->authn_idのユーザ名は、ユーザがログインしているロールと正確に一致する必要があります。(この動作はユーザマップで変更できます。)しかし、delegate_ident_mappingをオンにしてHBAルールに対して認証する場合、PostgreSQLはresult->authn_idの値をまったくチェックしません。この場合、トークンが指示されたroleの下でユーザがログインするのに十分な権限を持つかどうかは、バリデータが保証する必要があります」とすべきです。
通常、<structfield>result->authn_id</structfield>ユーザ名前は、ユーザがロギングとしているロールを正確にマッチする必要があります。
(この動作はユーザマップで変更できます。)
しかし、<literal>delegate_ident_mapping</literal>オンでHBAルールに対して認証する場合、<productname>PostgreSQL</productname>は<structfield>result->authn_id</structfield>の値をまったくチェックしません。
このケースでは、トークンが指示された<replaceable>role</replaceable>の下でユーザがログに対して十分な権限を持つかどうかは、バリデータから保証に委ねられます。
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
doc/src/sgml/oauth-validators.sgml
Outdated
| peer and ensure that strong transport security is in use. | ||
| --> | ||
| 《機械翻訳》ネットワークを越えてトークンを送る実装(例に対して、プロバイダとオンライントークンバリデーションを行うために)は、強いトランスポートセキュリティが使われている同等なと保証を認証しなくてはなりません。 | ||
| ネットワークを越えてトークンを送る実装(例に対して、プロバイダとオンライントークンバリデーションを行うために)は、強いトランスポートセキュリティが使われている同等なと保証を認証しなくてはなりません。 |
There was a problem hiding this comment.
「ネットワークを越えてトークンを送る実装(例に対して、プロバイダとオンライントークンバリデーションを行うために)は、強いトランスポートセキュリティが使われている同等なと保証を認証しなくてはなりません」は誤訳です。英文 "Implementations that send tokens over the network (for example, to perform online token validation with a provider) must authenticate the peer and ensure that strong transport security is in use" の正しい翻訳は「ネットワークを介してトークンを送信する実装(例えば、プロバイダとオンライントークンバリデーションを行うために)は、ピアを認証し、強力なトランスポートセキュリティが使用されていることを確認する必要があります」とすべきです。
| ネットワークを越えてトークンを送る実装(例に対して、プロバイダとオンライントークンバリデーションを行うために)は、強いトランスポートセキュリティが使われている同等なと保証を認証しなくてはなりません。 | |
| ネットワークを介してトークンを送信する実装(例えば、プロバイダとオンライントークンバリデーションを行うために)は、ピアを認証し、強力なトランスポートセキュリティが使用されていることを確認する必要があります。 |
doc/src/sgml/oauth-validators.sgml
Outdated
| an OAuth ecosystem. | ||
| --> | ||
| 《機械翻訳》前モジュールを実装しているこのセクションバリデータの全体を読んで理解してください。 | ||
| 前モジュールを実装しているこのセクションバリデータの全体を読んで理解してください。 |
There was a problem hiding this comment.
日本語の語順が不自然です。「前モジュールを実装しているこのセクションバリデータの全体を読んで理解してください」は意味が通りません。正しくは「バリデータモジュールを実装する前にこのセクション全体を読んで理解してください」とすべきです。英文 "Read and understand the entirety of this section before implementing a validator module" を正確に翻訳する必要があります。
| 前モジュールを実装しているこのセクションバリデータの全体を読んで理解してください。 | |
| バリデータモジュールを実装する前に、このセクション全体を読んで理解してください。 |
doc/src/sgml/oauth-validators.sgml
Outdated
| ノートの委任を有効にすることで、匿名/仮名のログインも可能です。 | ||
| <xref linkend="oauth-validator-design-usermap-delegation"/>を参照してください。 | ||
| ユーザマップ |
There was a problem hiding this comment.
文末に意味不明な単語「ダウンドキュメント」が残っています。これは前段落の英文から脱落したものと思われ、削除すべきです。また同じく「ユーザマップ」も次の段落の残滓と思われます。
doc/src/sgml/oauth-validators.sgml
Outdated
| OAuthバリデータモジュールは、<xref linkend="guc-oauth-validator-libraries"/>にリストされている共有ライブラリから動的にロードされます。 | ||
| モジュールは、進行中のログインからリクエストされたときにオンデマンドでロードされます。 | ||
| 通常のライブラリ検索パスは、ライブラリの位置を特定するために使用されます。 | ||
| バリデータコールバックを提供し、ライブラリがOAuthバリデータモジュールであることを示すには、関数記名的を指定する必要があります<function>_PG_OAuth_validator_module_init</function>指定する必要があります。 |
There was a problem hiding this comment.
「バリデータコールバックを提供し、ライブラリがOAuthバリデータモジュールであることを示すには、関数記名的を指定する必要があります_PG_OAuth_validator_module_init指定する必要があります」は誤訳で意味不明です。英文 "a function named _PG_oauth_validator_module_init must be provided" の正しい翻訳は「_PG_oauth_validator_module_initという名前の関数を提供する必要があります」とすべきです。また、「記名的」や「指定する必要があります」の重複は削除すべきです。
| バリデータコールバックを提供し、ライブラリがOAuthバリデータモジュールであることを示すには、関数記名的を指定する必要があります<function>_PG_OAuth_validator_module_init</function>指定する必要があります。 | |
| バリデータコールバックを提供し、ライブラリがOAuthバリデータモジュールであることを示すには、<function>_PG_oauth_validator_module_init</function>という名前の関数を提供する必要があります。 |
doc/src/sgml/oauth-validators.sgml
Outdated
| 《機械翻訳》<function>startup_cb</function>コールバックは、モジュールのロードの直後に実行されます。 | ||
| <function>startup_cb</function>コールバックは、モジュールのロードの直後に実行されます。 | ||
| このコールバックは、ローカルの状態を設定し、必要に応じて追加の初期設定を実行するために使用できます。 | ||
| バリデータモジュールに状態がある場合は、<structfield>state->private_data</structfield>それを格納するために使用できます。 |
There was a problem hiding this comment.
「バリデータモジュールに状態がある場合は、state->private_dataそれを格納するために使用できます」は語順が不自然です。正しくは「バリデータモジュールに状態がある場合は、state->private_dataを使用してそれを格納できます」とすべきです。
| バリデータモジュールに状態がある場合は、<structfield>state->private_data</structfield>それを格納するために使用できます。 | |
| バリデータモジュールに状態がある場合は、<structfield>state->private_data</structfield>を使用してそれを格納できます。 |
doc/src/sgml/oauth-validators.sgml
Outdated
| 《機械翻訳》DBAはpg_identマップをバリデータするためにこの情報を使用する必要があるかもしれないので、ドキュメント実装は認証されたIDの内容とフォーマットをサーバする必要があります。 | ||
| DBAはpg_identマップをバリデータするためにこの情報を使用する必要があるかもしれないので、ドキュメント実装は認証されたIDの内容とフォーマットをサーバする必要があります。 | ||
| (インスタンスの場合、メールアドレスですか?組織ID番号ですか?UUIDですか?また、モジュールを<symbol>delegate_ident_mapping=1</symbol>モードで使用するのがセーフかどうか、そしてそうするためにオーダーで必要な追加の設定は何かをドキュメントする必要があります。 | ||
| エンドユーザコンストラクト |
There was a problem hiding this comment.
文末に意味不明な「エンドユーザコンストラクト」があります。これは削除すべきです。
| エンドユーザコンストラクト |
doc/src/sgml/oauth-validators.sgml
Outdated
| 《機械翻訳》<replaceable>トークン</replaceable>には、検証対象のベアラトークンが含まれます。 | ||
| <replaceable>トークン</replaceable>には、検証対象のベアラトークンが含まれます。 | ||
| <application>PostgreSQL</application>では、トークンが構文的に整形式であることが確認されましたが、他のバリデーションは実行されていません。 | ||
| <replaceable>ロール</replaceable>には、ユーザがログに要求したロールがとして含まれます。 |
There was a problem hiding this comment.
「ロールには、ユーザがログに要求したロールがとして含まれます」は誤訳です。英文 "role will contain the role the user has requested to log in as" の正しい翻訳は「ロールには、ユーザがログインとして要求したロールが含まれます」とすべきです。「ログに要求した」や「として含まれます」という表現は不自然です。
| <replaceable>ロール</replaceable>には、ユーザがログに要求したロールがとして含まれます。 | |
| <replaceable>ロール</replaceable>には、ユーザがログインとして要求したロールが含まれます。 |
doc/src/sgml/oauth-validators.sgml
Outdated
| バリデータは、内部エラーを結果<literal>false</literal>シグナルに対してすることができます。 | ||
| この場合、ケースではすべての結果パラメータが無視され、コネクションは失敗します。 | ||
| そうでない場合、バリデータは結果<literal>true</literal>トークンを処理し、許可決定を行ったことを示すする必要があります。 |
There was a problem hiding this comment.
「バリデータは、内部エラーを結果falseシグナルに対してすることができます。この場合、ケースではすべての結果パラメータが無視され、コネクションは失敗します。そうでない場合、バリデータは結果trueトークンを処理し、許可決定を行ったことを示すする必要があります」は誤訳です。正しくは「バリデータは、内部エラーを示すためにfalseを返すことができます。この場合、すべての結果パラメータが無視され、接続は失敗します。そうでない場合、バリデータはtrueを返して、トークンを処理し、許可決定を行ったことを示す必要があります」とすべきです。
| バリデータは、内部エラーを結果<literal>false</literal>シグナルに対してすることができます。 | |
| この場合、ケースではすべての結果パラメータが無視され、コネクションは失敗します。 | |
| そうでない場合、バリデータは結果<literal>true</literal>トークンを処理し、許可決定を行ったことを示すする必要があります。 | |
| バリデータは、内部エラーを示すために<literal>false</literal>を返すことができます。 | |
| この場合、すべての結果パラメータが無視され、接続は失敗します。 | |
| そうでない場合、バリデータは<literal>true</literal>を返して、トークンを処理し、許可決定を行ったことを示す必要があります。 |
doc/src/sgml/oauth-validators.sgml
Outdated
| public/untrusted clients. | ||
| --> | ||
| 《機械翻訳》つまり、OAuthトラステッドと<productname>PostgreSQL</productname>クライアントが同じサーバによって制御されているという意味での「エンティティ」です。 | ||
| つまり、OAuthトラステッドと<productname>PostgreSQL</productname>クライアントが同じサーバによって制御されているという意味での「エンティティ」です。 |
There was a problem hiding this comment.
「OAuthトラステッドとPostgreSQLクライアントが同じサーバによって制御されているという意味での「エンティティ」です」は誤訳です。英文 "That is, 'trusted' in the sense that the OAuth client and the PostgreSQL server are controlled by the same entity" の正しい翻訳は「つまり、OAuthクライアントとPostgreSQLサーバが同じエンティティによって制御されているという意味での「信頼できる」です」とすべきです。
| つまり、OAuthトラステッドと<productname>PostgreSQL</productname>クライアントが同じサーバによって制御されているという意味での「エンティティ」です。 | |
| つまり、OAuthクライアントと<productname>PostgreSQL</productname>サーバが同じエンティティによって制御されているという意味での「信頼できる」です。 |
doc/src/sgml/oauth-validators.sgml
Outdated
| <xref linkend="oauth-validator-design-usermap-delegation"/>. | ||
| --> | ||
| 《機械翻訳》ノートの委任を有効にすることで、匿名/仮名のログインも可能です。 | ||
| ノートの委任を有効にすることで、匿名/仮名のログインも可能です。 |
There was a problem hiding this comment.
「ノートの委任」は誤訳です。英文 "usermap delegation" の正しい翻訳は「ユーザマップ委任」とすべきです。
| ノートの委任を有効にすることで、匿名/仮名のログインも可能です。 | |
| ユーザマップ委任を有効にすることで、匿名/仮名のログインも可能です。 |
はい。組織としてpgsql-jpのほうでGitHub CopilotのビジネスにしてCopilotを有効にする必要があるようです。 |
client-auth.sgmlに合わせて、 Validation -> 検証 Validator -> 検証器 と翻訳しました。
|
"draft" pull requestから、通常のpull requestになりました。 |
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 1 out of 1 changed files in this pull request and generated 17 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
doc/src/sgml/oauth-validators.sgml
Outdated
| 《機械翻訳》このステップの目的は、OAuthクライアントが偽のふりをしてトークンを取得するのを防ぐことです。 | ||
| バリデータがすべてのトークンにカバーデータベースアクセスのスコープを運ぶことを要求する場合、プロバイダはフローの間にそのアクセスを許可するためにユーザをプロンプトする必要があります。 | ||
| このステップの目的は、OAuthクライアントが虚偽の理由でトークンを取得するのを防ぐことです。 | ||
| 検証器がすべてのトークンにデータベースアクセスを可能にする内容を伴うことを要求する場合、処理中にプロバイダはユーザにアクセス許可を声高に求める必要があります。 |
There was a problem hiding this comment.
The translation appears awkward. The phrase "声高に求める" (kowadate ni motomeru) means "to demand loudly/vocally" which doesn't fit the context. A better translation would be "明示的に求める" (explicitly ask/prompt) or "プロンプトする" (prompt).
| 検証器がすべてのトークンにデータベースアクセスを可能にする内容を伴うことを要求する場合、処理中にプロバイダはユーザにアクセス許可を声高に求める必要があります。 | |
| 検証器がすべてのトークンにデータベースアクセスを可能にする内容を伴うことを要求する場合、処理中にプロバイダはユーザにアクセス許可を明示的に求める必要があります。 |
doc/src/sgml/oauth-validators.sgml
Outdated
| モジュールが真を無効と見なしたとしても、これはトークンです。 | ||
| クライアントを混乱させて間違いプロバイダと通信させた攻撃者は、ディスクから(そうでなければ有効な)トークンを取得できないはずです。 | ||
| モジュールは、サーバログにトークンまたはトークンの断片を書き込むべきではありません。 | ||
| モジュールがトークンを無効だと見なしたとしても、これは該当します。クライアントを混乱させて間違ったプロバイダと通信させようとする攻撃者が、ディスクから(そうでなければ有効な)トークンを取得できるべきではありません。 |
There was a problem hiding this comment.
The phrase "該当します" should be "当てはまります" or "該当します" to properly translate "this holds true even if". The current usage is grammatically awkward.
| モジュールがトークンを無効だと見なしたとしても、これは該当します。クライアントを混乱させて間違ったプロバイダと通信させようとする攻撃者が、ディスクから(そうでなければ有効な)トークンを取得できるべきではありません。 | |
| モジュールがトークンを無効だと見なしたとしても、これは当てはまります。クライアントを混乱させて間違ったプロバイダと通信させようとする攻撃者が、ディスクから(そうでなければ有効な)トークンを取得できるべきではありません。 |
doc/src/sgml/oauth-validators.sgml
Outdated
| 代わりは<symbol>ERROR</symbol>/<symbol>FATAL</symbol>スタックを巻き戻すためにを使用して、認証されていないクライアントへの情報の漏洩を回避します。 | ||
| ログ | ||
| モジュールは、標準拡張として同じ<link linkend="error-message-reporting">ロギングファシリティ</link>を使用する場合があります。ただし、クライアントへのログエントリを発行するためのルールは、コネクションの認証フェーズ中は微妙に異なります。 | ||
| 一般的に、<symbol>ERROR</symbol>/<symbol>FATAL</symbol>を使用してスタックを巻き戻すのではなく、認証されていないクライアントへの情報の漏洩を回避するために、<symbol>COMMERROR</symbol>レベルで検証上の問題をログして、正常終了する方が良いです。 |
There was a problem hiding this comment.
The phrase "検証上の問題をログして、正常終了する方が良いです" is awkward. A better translation would be "検証上の問題を<symbol>COMMERROR</symbol>レベルでログに記録し、正常に終了する方が適切です".
| 一般的に、<symbol>ERROR</symbol>/<symbol>FATAL</symbol>を使用してスタックを巻き戻すのではなく、認証されていないクライアントへの情報の漏洩を回避するために、<symbol>COMMERROR</symbol>レベルで検証上の問題をログして、正常終了する方が良いです。 | |
| 一般的に、認証されていないクライアントへの情報の漏洩を回避するために、<symbol>ERROR</symbol>/<symbol>FATAL</symbol>を使用してスタックを巻き戻すのではなく、検証上の問題を<symbol>COMMERROR</symbol>レベルでログに記録し、正常に終了する方が適切です。 |
| <function>WaitLatchOrSocket()</function>、<function>WaitEventSetWait()</function>、などを参照してください。 | ||
| また、長時間実行されるループは定期的に呼び出しする必要があります。 | ||
| モジュールは、サーバが正しく認証タイムアウトと<application>pg_ctl</application>からのシャットダウンシグナルを処理できるように、シグナルによる割り込みが可能でなければなりません。 | ||
| たとえば、ソケット上のブロッキング呼び出しは、一般的にソケットイベントと割り込みの両方を競合せずに処理するコードに置き換えるべきで(<function>WaitLatchOrSocket()</function>、<function>WaitEventSetWait()</function>、などを参照してください)、長時間実行されるループは<function>CHECK_FOR_INTERRUPTS()</function>定期的に呼び出しする必要があります。 |
There was a problem hiding this comment.
The sentence structure is confusing with mixed parenthetical elements. It should be restructured: "たとえば、ソケット上のブロッキング呼び出しは、一般的にソケットイベントと割り込みの両方を競合せずに処理するコードに置き換えるべきです(<function>WaitLatchOrSocket()</function>、<function>WaitEventSetWait()</function>などを参照してください)。また、長時間実行されるループは<function>CHECK_FOR_INTERRUPTS()</function>を定期的に呼び出しする必要があります。"
| たとえば、ソケット上のブロッキング呼び出しは、一般的にソケットイベントと割り込みの両方を競合せずに処理するコードに置き換えるべきで(<function>WaitLatchOrSocket()</function>、<function>WaitEventSetWait()</function>、などを参照してください)、長時間実行されるループは<function>CHECK_FOR_INTERRUPTS()</function>定期的に呼び出しする必要があります。 | |
| たとえば、ソケット上のブロッキング呼び出しは、一般的にソケットイベントと割り込みの両方を競合せずに処理するコードに置き換えるべきです(<function>WaitLatchOrSocket()</function>、<function>WaitEventSetWait()</function>などを参照してください)。また、長時間実行されるループは<function>CHECK_FOR_INTERRUPTS()</function>を定期的に呼び出す必要があります。 |
There was a problem hiding this comment.
原文と訳文の文章の数は一致させるという方針なので、この提案は不採用。
| これは次のように定義されます。 | ||
| <replaceable>トークン</replaceable>には、検証対象のベアラトークンが含まれます。 | ||
| <application>PostgreSQL</application>は、トークンが構文的に整形式であることを確認していますが、他のバリデーションは実行されていません。 | ||
| <replaceable>ロール</replaceable>には、ユーザがログインとして要求したロールが含まれます。 |
There was a problem hiding this comment.
Grammar issue: The phrase "ユーザがログに要求したロールがとして含まれます" has an extra particle "が" and awkward phrasing. It should be "ユーザがログインとして要求したロール名が含まれます" or "ユーザがログインに使用することを要求したロール名が含まれます".
| <replaceable>ロール</replaceable>には、ユーザがログインとして要求したロールが含まれます。 | |
| <replaceable>ロール</replaceable>には、ユーザがログインとして要求したロール名が含まれます。 |
There was a problem hiding this comment.
「ロール名」というのは原文にないので却下。
| しかし、<literal>delegate_ident_mapping</literal>オンでHBAルールに対して認証する場合、<productname>PostgreSQL</productname>は<structfield>result->authn_id</structfield>の値をまったくチェックしません。 | ||
| このケースでは、トークンが指示された<replaceable>role</replaceable>の下でユーザがログに対して十分な権限を持つかどうかは、バリデータから保証に委ねられます。 | ||
| <function>validate_cb</function> returnsの後の動作は、特定のHBA設定によって異なります。 | ||
| 通常、<structfield>result->authn_id</structfield>ユーザ名は、ユーザがログインしようとしているロールと正確に一致する必要があります。 |
There was a problem hiding this comment.
Awkward phrasing: "ユーザがログインしようとしているロールと正確に一致する" should be more natural. Consider "ユーザがログインしようとしているロール名と正確に一致する必要があります" for clarity.
| 通常、<structfield>result->authn_id</structfield>ユーザ名は、ユーザがログインしようとしているロールと正確に一致する必要があります。 | |
| 通常、<structfield>result->authn_id</structfield>のユーザ名は、ユーザがログインしようとしているロール名と正確に一致する必要があります。 |
There was a problem hiding this comment.
「ロール名」というのは原文にないので却下。
doc/src/sgml/oauth-validators.sgml
Outdated
| <function>validate_cb</function> returnsの後の動作は、特定のHBA設定によって異なります。 | ||
| 通常、<structfield>result->authn_id</structfield>ユーザ名は、ユーザがログインしようとしているロールと正確に一致する必要があります。 | ||
| (この振る舞いはユーザマップで変更できます。) | ||
| しかし、<literal>delegate_ident_mapping</literal>が有効でHBAルールに対して認証する場合、<productname>PostgreSQL</productname>は<structfield>result->authn_id</structfield>の値をまったくチェックしません。この場合、トークンが指示された<replaceable>role</replaceable>の下でユーザがログインするのに十分な権限を持つかどうかは、検証器に委ねられます。 |
There was a problem hiding this comment.
Grammar issue: The sentence is missing connector. "しかし、<literal>delegate_ident_mapping</literal>が有効でHBAルールに対して認証する場合" should be "しかし、<literal>delegate_ident_mapping</literal>が有効なHBAルールに対して認証する場合" for proper grammar.
| しかし、<literal>delegate_ident_mapping</literal>が有効でHBAルールに対して認証する場合、<productname>PostgreSQL</productname>は<structfield>result->authn_id</structfield>の値をまったくチェックしません。この場合、トークンが指示された<replaceable>role</replaceable>の下でユーザがログインするのに十分な権限を持つかどうかは、検証器に委ねられます。 | |
| しかし、<literal>delegate_ident_mapping</literal>が有効なHBAルールに対して認証する場合、<productname>PostgreSQL</productname>は<structfield>result->authn_id</structfield>の値をまったくチェックしません。この場合、トークンが指示された<replaceable>role</replaceable>の下でユーザがログインするのに十分な権限を持つかどうかは、検証器に委ねられます。 |
doc/src/sgml/oauth-validators.sgml
Outdated
| silently. Access to the database must be tightly restricted to only | ||
| trusted clients | ||
| --> | ||
| 構築された機構に対する帯域外の明示的な知識を使わずにクライアント認証を確立することは可能ですが、そうするとユーザを処理の中から排除し、設定の誤りに気が付かなくなることになり、その誤りが気が付かないうちに悪用されることになります。 |
There was a problem hiding this comment.
The translation is unclear. The phrase "帯域外の明示的な知識" doesn't properly convey "out-of-band knowledge". A better translation would be "構築された仕組みに関する外部から得た知識" or "デプロイされたアーキテクチャに関する事前知識".
| 構築された機構に対する帯域外の明示的な知識を使わずにクライアント認証を確立することは可能ですが、そうするとユーザを処理の中から排除し、設定の誤りに気が付かなくなることになり、その誤りが気が付かないうちに悪用されることになります。 | |
| デプロイされたアーキテクチャに関する外部から得た知識を用いることで、明示的なスコープを用いずにクライアント認可を確立することも可能ですが、そうするとユーザを処理の中から排除し、設定の誤りに気が付かなくなることになり、その誤りが気が付かないうちに悪用されることになります。 |
doc/src/sgml/oauth-validators.sgml
Outdated
| 《機械翻訳》バイパスでマッピング全体のユーザ名を使用し、バリデータモジュールにユーザ接続を許可する追加の責任を負わせるには、HBAを<xref linkend="auth-oauth-delegate-ident-mapping"/>で構成します。 | ||
| ユーザ名マッピングをバイパスし、検証器モジュールにユーザ接続を許可する追加の責任を負わせるには、HBAを<xref linkend="auth-oauth-delegate-ident-mapping"/>で構成します。 | ||
| モジュールは、トークンスコープまたは同等のメソッドを使用して、ユーザが目的のロールの下で接続できるかどうかを決定します。 | ||
| ユーザ識別子はサーバによって記録されますが、コネクションを継続するかどうかを決定する際にパートは使用されません。 |
There was a problem hiding this comment.
The phrase "パートは使用されません" is unclear. It should be "役割を果たしません" or "関係ありません" to properly translate "it plays no part in".
| ユーザ識別子はサーバによって記録されますが、コネクションを継続するかどうかを決定する際にパートは使用されません。 | |
| ユーザ識別子はサーバによって記録されますが、コネクションを継続するかどうかを決定する際には関係ありません。 |
doc/src/sgml/oauth-validators.sgml
Outdated
| 一般的に、モジュールは通常、<symbol>COMMERROR</symbol>レベルと結果で問題を検証する必要があります。 | ||
| 代わりは<symbol>ERROR</symbol>/<symbol>FATAL</symbol>スタックを巻き戻すためにを使用して、認証されていないクライアントへの情報の漏洩を回避します。 | ||
| ログ | ||
| モジュールは、標準拡張として同じ<link linkend="error-message-reporting">ロギングファシリティ</link>を使用する場合があります。ただし、クライアントへのログエントリを発行するためのルールは、コネクションの認証フェーズ中は微妙に異なります。 |
There was a problem hiding this comment.
The sentence structure is awkward with the explanatory clause placement. The sentence should be restructured for clarity: "モジュールは、標準拡張として同じ<link linkend="error-message-reporting">ロギングファシリティ</link>を使用する場合があります。ただし、接続の認証フェーズ中は、クライアントへのログエントリを発行するためのルールが微妙に異なります。"
| モジュールは、標準拡張として同じ<link linkend="error-message-reporting">ロギングファシリティ</link>を使用する場合があります。ただし、クライアントへのログエントリを発行するためのルールは、コネクションの認証フェーズ中は微妙に異なります。 | |
| モジュールは、標準の拡張機能と同様に、同じ<link linkend="error-message-reporting">ロギングファシリティ</link>を使用できます。ただし、コネクションの認証フェーズ中にクライアントへログエントリを出力する際のルールは、微妙に異なります。 |
| </footnote> | ||
| <!-- | ||
| if users are not prompted for additional scopes. | ||
| --> |
There was a problem hiding this comment.
その上の「もしユーザが追加のスコープの入力を求められない場合、データベースへのアクセスは信頼できるユーザにのみしっかりと制限されなければなりません。」の「もしユーザが追加のスコープの入力を求められない場合」で翻訳しています。
There was a problem hiding this comment.
なるほど。そうすると、その一文をこちらに持ってくるのはまずいでしょうか?
日本語訳が空になるブロックがチェックに引っかかる...
そもそも途中でfootnote入れて、原文が読みづらくないんだろうか...?
There was a problem hiding this comment.
なるほど。そうすると、その一文をこちらに持ってくるのはまずいでしょうか?
「もしユーザが追加のスコープの入力を求められない場合」を下に移動する、という意味ですか?それだと日本語の語順的に不自然になりますね。
「データベースへのアクセスは信頼できるユーザにのみしっかりと制限されなければなりません。もしユーザが追加のスコープの入力を求められない場合は。」
そもそも途中でfootnote入れて、原文が読みづらくないんだろうか...?
レンダリングしたものは特に問題ないようです。
https://www.postgresql.org/docs/18/oauth-validator-design.html#OAUTH-VALIDATOR-DESIGN-GUIDELINES
There was a problem hiding this comment.
ありがとうございます。本文中に差し込まれるかと勘違いしてました。
そうすると
データベースへのアクセスは信頼できるユーザにのみしっかりと制限されなければなりません。[17]
となりますが、
データベースへのアクセスは信頼できるユーザにのみしっかりと制限されなければなりません[17]。
のように「。」をこのブロックに残すか
データベースへのアクセスは信頼できるユーザ[17]にのみしっかりと制限されなければなりません。
のように途中で入れて、このブロックに「にのみしっかりと制限されなければなりません。」と入れるのはどうでしょうか?
doc/src/sgml/oauth-validators.sgml
Outdated
| --> | ||
| 《機械翻訳》前モジュールを実装しているこのセクションバリデータの全体を読んで理解してください。 | ||
| 機能不全のバリデータは、認証が提供する偽の感覚と、OAuthエコシステムの他の部分に対する攻撃に寄与する可能性があるため、全くセキュリティがないよりも潜在的に悪いです。 | ||
| 検証器モジュールを実装する前にこのセクション全体を読んで理解してください |
AIの指摘でコメントしていないものは、対応しています。
doc/src/sgml/oauth-validators.sgml
Outdated
| performing validation (see <xref linkend="oauth-validator-callback-validate"/>). | ||
| --> | ||
| 《機械翻訳》OAuthバリデータモジュールは、少なくとも初期関数(<xref linkend="oauth-validator-init"/>を参照)と、バリデーションを実行するために必要なコールバック(<xref linkend="oauth-validator-callback-validate"/>を参照)で構成されている必要があります。 | ||
| OAuth検証器モジュールは、少なくとも初期関数(<xref linkend="oauth-validator-init"/>を参照)と、バリデーションを実行するために必要なコールバック(<xref linkend="oauth-validator-callback-validate"/>を参照)で構成されている必要があります。 |
doc/src/sgml/oauth-validators.sgml
Outdated
| --> | ||
| 《機械翻訳》オンラインバリデーション(通常は<ulink url="https://datatracker.ietf.org/doc/html/rfc7662">OAuthトークンイントロスペクションを介して実装される)では、バリデータモジュールの手順が少なくて済み、盗難または誤発行されたイベントのトークンを一元的に失効させることができます。 | ||
| ただし、モジュールは、認証の試行ごとに少なくとも1つのネットワーク呼び出しをmakeする必要があります(これらはすべて、構成された<xref linkend="guc-authentication-timeout"/>内で完了する必要があります)。 | ||
| オンライン検証(通常は<ulink url="https://datatracker.ietf.org/doc/html/rfc7662">OAuthトークンイントロスペクション</ulink>を介して実装される)では、検証器モジュールの手順が少なくて済み、盗難または誤用されたイベントのトークンを一元的に失効させることができます。 |
There was a problem hiding this comment.
misissued なので誤発行の方が正しいのではないでしょうか?
There was a problem hiding this comment.
はい、訂正します。"misused"に空目してました。
doc/src/sgml/oauth-validators.sgml
Outdated
| maximum length of a token's validity period. | ||
| --> | ||
| 《機械翻訳》オフラインバリデーションははるかに複雑であり、通常、バリデータはプロバイダのトラステッド署名キーのリストを維持し、チェックはトークンの暗号シグネチャとその内容を維持する必要があります。 | ||
| オフライン検証ははるかに複雑であり、通常検証器はプロバイダのトラステッド署名キーのリストを維持し、チェックはトークンの暗号シグネチャとその内容を維持する必要があります。 |
There was a problem hiding this comment.
トークンの暗号署名とその内容をチェックすることになります。
とするのはどうでしょうか。
doc/src/sgml/oauth-validators.sgml
Outdated
| モジュールが<structfield>result->authorized</structfield>を<literal>true</literal>に設定した場合のみ、コネクションが続行されます。 | ||
| ユーザを認証するために、認証されたユーザ名(トークンを使用して決定されたもの)はpallocされ、<structfield>result->authn_id</structfield>フィールドで返される必要があります。 | ||
| または、<structfield>result->authn_id</structfield>トークンが有効であるが、関連付けられたユーザIDを決定できない場合は、NULLに設定される場合があります。 | ||
| <structfield></structfield> |
There was a problem hiding this comment.
<structfield></structfield>が残ってました。こちらも削除お願いします。
| </footnote> | ||
| <!-- | ||
| if users are not prompted for additional scopes. | ||
| --> |
There was a problem hiding this comment.
なるほど。そうすると、その一文をこちらに持ってくるのはまずいでしょうか?
日本語訳が空になるブロックがチェックに引っかかる...
そもそも途中でfootnote入れて、原文が読みづらくないんだろうか...?
とりあえず機械翻訳タグを削除しただけのdraft prです。
これでまずAIレビューをしてもらうテスト。