Ocata バージョンのリリースノート¶
11.0.4¶
Bug Fixes¶
[bug 1704205] すべてのユーザーとグループには名前が必要です。この修正に先立って、 Keystone は LDAP ユーザーとグループに対してこれを適切に実施していませんでした。 Keystone は、そのエンティティの名前に使用するように設定されている LDAP 属性の値を持たないユーザーおよびグループを無視します。
[bug 1718747] ドメインを含まれるユーザーごと削除するときにサーバーエラーが発生するというリグレッションが修正されています。このバグ修正は、ドメインの名前空間内に置かれているユーザーを削除するという以前の動作を復元します。これは、SQL 認証バックエンドを使用する場合にのみ適用されます。
その他の注意点¶
[bug 1718747] ユーザーを含むドメインが削除されないようにする認証 SQL バックエンドのリグレッションを解決する一環として、認証バックエンドが SQL の場合にのみユーザーが削除されるように通知コールバックが変更されました。読み取り専用ではないカスタム認証バックエンドを使用している場合、そのドライバーで is_sql プロパティが true と評価されない限り、Keystone でドメインを削除してもバックエンドのユーザーは削除されません。
11.0.3¶
セキュリティー上の問題¶
[bug 1703369] 以前のリリースのデフォルトの
policy.json
ファイルには、identity:get_identity_provider ルールにタイプミスがありました。そのルールのデフォルト値はデフォルトルールのデフォルト値(adminに制限されています)と同じで、このタイプミスが容易には判明しませんでした。このルールをカスタマイズしたら、設定を確認して、そのタイプミスをコピーしていないことを確認する必要があります。このバックポートの目的に関する詳細は、バグレポートに記載されています。
Bug Fixes¶
[bug 1689616] 膨大なデータセットに対してトークンフラッシュを実行するときの、重要な改善が行われました。
[bug 1687593] OAUTH1 要求トークンを作成するときの要求を行うために使用される URL が、要求トークンを検証する URL でもあることを確実にしました。
11.0.1¶
Bug Fixes¶
[bug 1674415] ロケールが設定されている 認証 API から、どんなエラーメッセージも発生しないという、 Keystone エラーメッセージの翻訳に関する問題を修正しました。
11.0.0¶
紹介¶
現在、デフォルトのトークンプロバイダーは、 Fernet です。
PKI と PKIz トークン形式は削除されました。詳細は
その他の注意点
を参照してください。LDAP への書き出しのサポートは削除されました。詳細は
その他の注意点
を参照してください。
新機能¶
[blueprint allow-expired] 有効期限が切れたトークンを取得できるトークン検証コール (
GET /HEAD/v3 /auth/tokens
) に allow_expired フラグが追加されました。 これにより、長時間実行されている操作のトークンの検証が可能になります。
[blueprint password-expires-validation] トークンレスポンスは
user
オブジェクトにpassword_expires_at
フィールドを持つようになりました。これはつまり、{"token": {"user": {"password_expires_at": null}}}
[security_compliance]
設定オプションによってPCI サポートを有効にしている場合に、password_expires_at
項目にタイムスタンプが入力されます。そうでなければ、デフォルトでnull
になり、パスワードの有効期限が切れないことを意味します。
[blueprint pci-dss-notifications] CADF 通知は、 PCI-DSS イベントにも適用されます。
reason
オブジェクトが通知に追加されました。reason
オブジェクトにはreasonType
(理由の簡単な説明)とreasonCode
(HTTP レスポンスコード)があります。以下のイベントが影響を受けます:ユーザーが少なくとも X 日ごとにパスワードを変更しない場合、
[security_compliance] password_expires_days
を参照してください。認証に複数回失敗してユーザーがロックアウトされた場合、
[security_compliance] lockout_failure_attempts
を参照してください。ユーザーが新しいパスワードに最近使用されたものを送信した場合、
[security_compliance] unique_last_password_count
を参照してください。パスワードが指定された基準を満たしていない場合、
[security_compliance] password_regex
を参照してください。ユーザーが頻繁にパスワードを変更しようとする場合、
[security_compliance] minimum_password_age
を参照してください。
追加の詳細は、event notifications を参照してください。
[blueprint pci-dss-password-requirements-api] パスワードの正規表現要件を取得するための新しい API (
/v3/domains/{domain_id}/config/security_compliance
)を追加しました。具体的には、[security_compliance] password_regex
と[security_compliance] password_regex_description
が返されます。これらのオプションは、さまざまな[security_compliance]
設定オプションを使って PCI サポートが有効になっている場合にのみ有効であることに注意してください。
- [blueprint pci-dss-query-password-expired-users]
/v3/users
と/v3/groups/{group_id}/users
にpassword_expires_at
クエリーを追加しました。password_expires_at
クエリーはoperator
(下記の有効な選択肢)とYYYY-MM-DDTHH:mm:ssZ
形式のtimestamp
の2つの部分で構成されています。 API は与えられたoperator
とtimestamp
に基づいてユーザーのリストをフィルタリングします。 lt - パスワードはそのタイムスタンプより前に有効期限が切れます
lte - パスワードはそのタイムスタンプ以降に有効期限が切れます
gt - パスワードはそのタイムスタンプより後に有効期限が切れます
gte - パスワードはそのタイムスタンプ以降に有効期限が切れます
eq - パスワードはそのタイムスタンプで有効期限が切れます
neq - パスワードはそのタイムスタンプではないときに有効期限が切れます
- [blueprint pci-dss-query-password-expired-users]
[blueprint per-user-auth-plugin-reqs] ユーザー単位の多要素認証ルール( MFA ルール)が実装されました。 これらのルールは、どの認証方法を使用できるか(たとえば、パスワードや TOTP)を定義し、トークンを正常に取得するために複数の認証フォームを要求する機能を提供します。
MFA ルールは、ユーザー作成および更新 API (
POST/PATCH /v3/users
) の呼び出しによって設定されます。 このオプションを使用すると、管理者は、ユーザーによるトークン取得に、特定の形式の認証、または複数の形式の認証の組み合わせの使用を強制することができます。 ルールは次のように指定されます。user["options"]["multi_factor_auth_rules"] = [["password", "totp"], ["password", "custom-auth-method"]]
ルールはリストのリストとして指定されます。 サブリストの要素は文字列でなければならず、
[auth] methods
オプションのkeystone.conf
で定義されている必要な認証方法名(password
やtotp
など)です。メソッドの各リストはルールを指定します。 ユーザーが提供する認証方法がリスト内の認証方法と一致(または複数が一致)した場合、そのルールが使用されます。 見つかった最初のルール(ルールは特定の順序で処理されません)が使用されます。 ユーザーがルールセットを
[["password","totp"]]
として定義している場合、ユーザーはトークンを受け取るためには password と totp の両方の認証方法を提供しなければなりません。 しかし、ユーザーが[["password"],["password","totp"]]
として定義されたルールセットを持っている場合、ユーザーは自身のpassword``メソッドを使うことができますが、 ``totp
が指定されていればpassword``と ``totp
の両方を使います。[auth] methods
オプションのkeystone.conf
で定義されていない認証方法は、ルールの処理時に無視されます。空のルールは設定できません。ルール内に無効な認証方法が存在するためにルールが空の場合、ルールは認証時に破棄されます。 ユーザーにルールがない場合、またはユーザーに対して有効なルールがない場合、認証はデフォルトの方法で行われます。一つの認証方法が設定されていいれば、トークンを受信するのに十分です。ユーザーが MFA ルールから免除されるべきである場合、設定されているかどうかにかかわらず、 ユーザーが作成と更新 API ( `` POST / PATCH / v3 / users``)を呼び出すことによって、そのユーザーの User-Option の
multi_factor_auth_enabled
オプションがFalse
に設定されます。このオプションがFalse
に設定されている場合、 そのユーザに対して MFA ルールは無視されます。False
を除く他の値の場合は、 MFA ルールが処理される結果となります。 オプションはブール値(True
またはFalse
)、あるいは None (これはデフォルトの動作(True
と同じ)になりますが、このオプションはuser ["options"]
ディクショナリーからなくなります)です。ユーザーを MFA ルールから免除されるようにマークするには:
user["options"]["multi_factor_auth_enabled"] = False
token
認証方法は、通常、どの MFA ルールでも指定すべきではありません。token
認証方法は、元の認証リクエストに対するすべての以前の認証方法を含み、適切なルールセットと一致します。token
メソッドは、アクティブなプロジェクトの再スコープ/変更に使用されるもので、これは意図的なものです。セキュリティ情報: MFA ルールは、認証が V3 認証 API を介して行われる場合にのみ処理されます。 V2 認証が有効な場合、ユーザーが V2 認証 APIを使用して認証できる場合は、MFA ルールを迂回することができます。 MFA ルールを完全に実施するには、V2 認証を無効にすることをお勧めします。
[blueprint shadow-mapping] The federated identity mapping engine now supports the ability to automatically provision
projects
forfederated users
. A role assignment will automatically be created for the user on the specified project. If the project specified within the mapping does not exist, it will be automatically created in thedomain
associated with theidentity provider
. This behavior can be triggered using a specific syntax within thelocal
rules section of a mapping. For more information see: mapping combinations
[blueprint support-federated-attr] 統合認証の属性(
idp_id
、protocol_id
、unique_id
)の問い合わせをサポートするために、 list user API (GET /v3/users
) に新しいフィルターを追加しました。
[bug 1638603] Active Directory のネストされたグループのサポートを追加しました。新しいブール値のオプション
[ldap] group_ad_nesting
を追加しました。デフォルトはFalse
です。有効にすると、ネストされたグループを持つ Active Directory を使用できます。このオプションは、list_users_in_group
、list_groups_for_user
、およびcheck_user_in_group
操作に影響します。
[bug 1641645] RBAC保護が Self-service change user password API (
/v3/user/$ user_id/password
)から削除されました。つまり、ユーザーは ``X- Auth-Token` ヘッダーに指定されているトークンを使用せずにパスワードを変更できるようになりました。この変更により、期限切れのパスワードを持つユーザーは、管理者の介入なしにパスワードを更新できます。
[bug 1641654] oslo.middleware の
healthcheck
ミドルウェアは、デフォルトで Keystone のアプリケーションパイプラインに追加されています。 このミドルウェアは、Keystone の健全性をチェックする一般的な方法を提供します。keystone-paste.ini
に用意されている例を参照して、healthcheck
ミドルウェアを含める方法を見てください。
[bug 1641816] デフォルトで
[token] cache_on_issue
オプションが有効になりました。このオプションは、グローバルキャッシングとトークンキャッシングが有効になっていない限り無効です。
[bug 1642348] デプロイヤーが PCI ロックアウトルールから除外されているユーザーを指定できるようにする新しいオプション
[security_compliance] lockout_ignored_user_ids
が追加されました。
[Bug 1645487] 新しいユーザーの最初の使用時、および管理者によるパスワードのリセット後に、ユーザーにすぐにパスワード変更を必要とさせるための新しい PCI-DSS 機能が追加されました。新しい機能を有効にするには、[security_compliance]
change_password_upon_first_use
をTrue
に設定します。
アップグレード時の注意¶
[blueprint allow-expired] サービスを完了するために長時間実行される操作を許可するには、
allow_expired
フラグを使って期限切れのトークンを取得できる必要があります。それまでの有効期限を超えてトークンを取得可能な時間は、[token] allow_expired_window
オプションで管理されるため、この時間の間、データを取得可能にする必要があります。 Fernet トークンを使用する場合、古いトークンがまだ解読可能であるためには、キーのローテート期間がこれ以上でなければならないことを意味します。[token] expiration
+[token] allow_expired_window
秒より早く Fernet キーをローテートさせないようにしてください。
[bug 1547684] サンプルファイルが正しく読み込まれるように、
policy.v3cloudsample.json
サンプルファイルを少し変更しました。cloud_admin
ルール変更前:"role:admin and (token.is_admin_project:True or domain_id:admin_domain_id)"
正しくは:
"role:admin and (is_admin_project:True or domain_id:admin_domain_id)"
必要に応じて設定ツールを調整してください。この変更の詳細については、
バグ修正
のセクションを参照してください。
[bug 1561054] デフォルトのトークンプロバイダーは、 UUID から Fernet に切り替えました。 Fernet は、Ocata を実行する前にキーリポジトリーが必要であることに注意してください。これは
keystone-manage fernet_setup
を実行することで実現できます。さらに、マルチノード環境では、アップグレードする前にキー配布プロセスを使用することが不可欠です。キーリポジトリーを作成したら、そのリポジトリーをデプロイメントのすべての Keystone ノードに配布する必要があります。これにより、各 Keystone ノードはデプロイメント全体で発行されたトークンを検証できます。 トークン形式を切り替える必要がない場合は、keystone.conf
の[token] provider
をuuid
に設定して、各ノードのトークンプロバイダーを明示的に設定する必要があります。 ドキュメントは fernet-tokens <https://docs.openstack.org/developer/keystone/configuration.html#encryption-keys-for-fernet-tokens> _ にあります。
[bug 1641654] oslo.middleware の
healthcheck
ミドルウェアは、デフォルトで KeyStone のアプリケーションパイプラインに追加されています。 次のセクションがkeystone-paste.ini
に追加されました。[filter:healthcheck] use = egg:oslo.middleware#healthcheck
パイプラインの最初に
healthcheck
ミドルウェアを使うことをお勧めします:pipeline = healthcheck cors sizelimit http_proxy_to_wsgi osprofiler ...
[bug 1641660]
[DEFAULT] notification_format
のデフォルト値はbasic
からcadf
に変更されました。 CADF 通知には、要求を開始したユーザーに関する詳細情報があります。
[bug 1641660]
[DEFAULT] notification_opt_out
のデフォルト値は、identity.authenticate.success
、identity.authenticate.pending
、identity.authenticate.failed
を含むように変更されました。 デプロイメントがこれらの通知に依存している場合は、デフォルト設定を書き換えてください。
[bug 1642687] アップグレードが成功すると、すべての既存の
identity provider
が自動的に作成されたドメインに関連付けられます。 Ocata リリースより前に存在していた``identity provider`` にはdomain_id
フィールドが追加されました。新しいドメインはid
(ランダムな UUID) およびidentity provider
ID と一致するname
を持ち、デフォルトではenabled
になります。
[Related to Bug 1649446]
identity:list_revoke_events
ルールは両方のサンプルポリシーファイルpolicy.json``と ``policy.v3cloudsample.json
で変更されました。変更前::"identity:list_revoke_events": ""
変更後:
"identity:list_revoke_events": "rule:service_or_admin"
廃止予定の機能¶
[bug 1659995] 設定オプション
[security_compliance] password_expires_ignore_user_ids
は非推奨となり、オプションの値セットの使用を推奨しています。これは、ユーザー作成および更新 API 呼び出しで利用できます。
[blueprint deprecated-as-of-ocata] カタログバックエンド
endpoint_filter.sql
は、 Ocata リリースで非推奨となり、sql
バックエンドと統合されました。endpoint_filter.sql
カタログバックエンドをsql
バックエンドに置き換えることをお勧めします。endpoint_filter.sql
バックエンドは Pike リリースで削除されます。
[blueprint deprecated-as-of-ocata] 様々な KVS バックエンドと設定オプションが非推奨となり、 Pike リリースで削除される予定です。 以下が含まれます。
keystone.common.kvs.backends.inmemdb.MemoryBackend
keystone.common.kvs.backends.memcached.MemcachedBackend
keystone.token.persistence.backends.kvs.Token
keystone.conf の
[kvs]
にあるすべての設定オプションkeystone.conf の
[memcached] servers
の設定オプション
致命的な問題¶
[bug 1561054] Fernet トークンにアップグレードする場合は、キーリポジトリーとキー配布メカニズムを適切に配置する必要があります。そうしないと、トークンの検証が機能しない可能性があります。詳細については、アップグレード時の注意のセクションを参照してください。
セキュリティー上の問題¶
[bug 1650676] 認証プラグインは、
AuthContext
オブジェクトを使用する必要があります。これにより、サーバーが処理する認証方法の間でuser_id
などの情報が変更されないようにするためのセキュリティ機能が追加されました。keystone.controllers.Auth.authenticate
メソッドは、引数auth_context
を実際のAuthContext
オブジェクトにする必要があります。
Bug Fixes¶
[bug 1524030] トークンの検証中に返される取り消しイベントの数を減らし、トークンに関連するイベントのサブセットのみ返すようにしました。したがって、全体的なトークン検証のパフォーマンスが向上します。
[bug 1651989]
bug 1547684
によって、policy.v3cloudsample.json
サンプルファイルを使用した時に、ドメイン管理者トークンがクラウド管理者として扱われれていました。is_admin_project
機能がプロジェクトにスコープされたトークンのみをサポートしているので、is_admin_project
プロパティを持つすべてのドメインにスコープされたトークンに ``False``に自動的に設定します。[bug 1547684]
policy.v3cloudsample.json
サンプルファイルのタイプミスにより oslo.policy がファイルをロードしていませんでした。 詳細については、アップグレード時の注意
の節を参照してください。
[bug 1571878] フェデレーションプロトコルを作成または更新するときは、有効な
mapping_id
が必要になります。mapping_id
が存在しない場合、400 - Bad Request
が返されます。
[bug 1616424]
/v3/OS-OAUTH1/request_token
と/ v3/OS-OAUTH1/access_token
API を使って、 OAuth リクエストトークンと OAuth アクセストークンを作成する際の例外メッセージが改善されました。
[bug 1622310] 信頼がスコープされているプロジェクト、または委任が割り当てられているユーザー(委託者または受託者)が削除された場合、信頼は無効になります。
[bug 1636950] 新しいオプション
[ldap] connection_timeout
は、デプロイヤーが LDAP サーバーで使用するためのOPT_NETWORK_TIMEOUT
値を設定できるようにします。これにより、LDAP URLが正しくない場合や接続に失敗した場合、 LDAP サーバーはSERVER_DOWN
例外を返すことができます。デフォルトでは、[ldap] connection_timeout
の値は -1 であり、無効になっています。オプションを有効にするには、正の値(秒単位)を設定します。
[bug 1642457] Fernet トークンのキーをローテーションするときの、ディスク書き込みと I/O 失敗を処理します。空のキーを作成するのではなく、ディスクに書き込めないときにエラーを適切にキャッチしてログに記録します。
[bug 1642687] OS-FEDERATION API を介して
identity provider
を登録する際には、要求内のidentity provider
に関連付けるためにdomain_id
を含むことが推奨されています。identity provider
で認証された統合されたユーザーは、指定されたdomain_id
に関連付けられます。domain_id
を指定しないと、自動的にドメインが作成されます。
[bug 1642687]
identity provider
で認証するユーザーは、domain_id
属性を持つようになりました。これは、identity provider
と結びついています。
[bug 1642692] 1つの`federation protocol` が削除されると、federation protocol で認証されたすべてのユーザーも削除されます。
[bug 1649138] 認証バックエンドとして LDAP を使用する場合、初期のバインドは接続オブジェクトの作成時に発生します。つまり、LDAP クエリーの実行の早期の段階で、バインドが認証されているか匿名であるかにかかわらず、接続エラーを正しく、早期に処理できます。
[Bug 1649446] 取り消しイベントをリストするデフォルトのポリシーが変更されました。以前は、すべての認証されたユーザーが取り消しイベントをリストできました。デフォルトでは、管理者またはサービスユーザー専用の機能に変更されました。 これは、 Keystone によって使用されているポリシーファイルを変更することによって変更できます。
[bug 1656076]
keystone.controllers.Auth.authenticate
配下の様々なプラグインは、AuthContext
オブジェクトを返す必要があります。
[bug 1659995] 新しいオプションは、ユーザー作成更新 API (
POST/PATCH /v3/users
)呼び出しを使用して、管理者がユーザーを特定の PCI 要件から免除されるようにマークすることを可能にします。ユーザーを PCI パスワードロックアウトポリシーから免除するように設定するには、API リクエストで以下のユーザー属性を
True
あるいはFalse
に設定してください。user['options']['ignore_lockout_failure_attempts']
ユーザーを PCI パスワード有効期限ポリシーから免除されるようにマークするには:
user['options']['ignore_password_expiry']
ユーザーを PCI リセットポリシーから免除されるようにマークするには:
user['options']['ignore_change_password_upon_first_use']
その他の注意点¶
[bug 1017606]
keystone.catalog.backends.base.CatalogDriverBase
のget_catalog
メソッドとget_v3_catalog
メソッドが変更されました。抽象クラス(CatalogDriverBase
)を拡張するサードパーティー拡張は、新しいパラメータ名に従って変更する必要があります。変更前のメソッド:get_catalog(self, user_id, tenant_id) get_v3_catalog(self, user_id, tenant_id)
変更後:
get_catalog(self, user_id, project_id) get_v3_catalog(self, user_id, project_id)
[bug 1524030]
keystone.revoke.backends.base.RevokeDriverBase
のlist_events
メソッドを変更しました。 抽象クラス(RevokeDriverBase
)を拡張するサードパーティー拡張は、新しいパラメーターに従ってコードを変更する必要があります。 メソッドの変更前:list_events(self, last_fetch=None)
変更後:
list_events(self, last_fetch=None, token=None)
[bug 1563101] トークンプロバイダードライバーインタフェースを
keystone.token.provider.Provider
からkeystone.token.providers.base.Provider
に移動しました。カスタムトークンプロバイダーを実装する場合は、新しい場所からサブクラス化してください。
[bug 1582585] 新しいメソッド
get_domain_mapping_list
がkeystone.identity.mapping_backends.base.MappingDriverBase
に追加されました。抽象クラス(MappingDriverBase
)を拡張するサードパーティー拡張は、この新しいメソッドを実装する必要があります。このメソッドは次のように実装されています:get_domain_mapping_list(self, domain_id)
指定されたドメイン ID のマッピングの一覧が返されます。
[bug 1611102]
list_endpoints_for_policy()
とget_policy_for_endpoint()
メソッドは使用されていないため、keystone.endpoint_policy.backends.base.EndpointPolicyDriverBase
抽象クラスから削除されました。
[bug 1622310] 新しいメソッド
delete_trusts_for_project
がkeystone.trust.backends.base.TrustDriverBase
に追加されました。抽象クラス(TrustDriverBase
)を拡張するサードパーティー拡張は、新しいパラメータに従って変更する必要があります。 新しいメソッドは次のように実装されています:delete_trusts_for_project(self, project_id)
[bug 1642687]
keystone.identity.shadow_backends.base.ShadowUsersDriverBase
のcreate_federated_user
メソッドにおける署名が変更されました。抽象クラス(
ShadowUsersDriverBase
)を継承するサードパーティ拡張は、新しいパラメータ名に従って更新する必要があります。メソッドの署名が以下から変更されました。
create_federated_user(self, federated_dict)
変更後:
create_federated_user(self, domain_id, federated_dict)
[bug 1659730]
keystone.auth.plugins.base.AuthMethodHandler
のauthenticate
メソッドにある署名が変更されました。抽象クラス(AuthMethodHandler
)を継承したサードパーティー製の拡張は、新しいパラメーター名にしたがって、そのコードを変更する必要があります。メソッドの署名は以下から変更されました。authenticate(self, context, auth_payload, auth_context)
変更後:
authenticate(self, request, auth_payload, auth_context)
PKI および PKIz トークン形式が削除され、 Fernet トークンが採用されました。
LDAP への書き込みのサポートは、読み込みのみのサポートのため、削除されました。以下の LDAP の操作はサポートさなくなりました。
ユーザーの作成
グループの作成
ユーザーの削除
グループの削除
ユーザーの更新
グループの更新
ユーザーのグループへの追加
ユーザーのグループからの削除
Route および contrib 拡張の SQL バックエンドが削除、 Keystone に組み込まれ、オプションではなくなりました。 これは次のような影響を与えます。
keystone/contrib/admin_crud
keystone/contrib/endpoint_filter
keystone/contrib/federation
keystone/contrib/oauth1
keystone/contrib/revoke
keystone/contrib/simple_cert
keystone/contrib/user_crud
Keystone キャッシュバックエンドは、 oslo.cache と同等のため削除しました。 これは次のような影響を与えます。
keystone/common/cache/backends/mongo
keystone/common/cache/backends/memcache_pool
keystone/common/cache/backends/noop
抽象クラス
keystone.token.providers.base.Provider
からの幾つかのトークン検証メソッド(下記参照)が削除され、トークンを検証するための単一のメソッド(validate_token
)になりました。これは署名を取りますvalidate_token(self, token_ref)
。 カスタムトークンプロバイダを使用している場合は、それに応じてカスタムプロバイダを更新してください。validate_v2_token
validate_v3_token
validate_non_persistent_token
抽象クラス
keystone.token.providers.base.Provider
からの幾つかのトークン発行メソッド(下記参照)が削除され、トークンを発行するための単一のメソッド(issue_token
)になりました。 カスタムトークンプロバイダを使用している場合は、それに応じてカスタムプロバイダを更新してください。issue_v2_token
issue_v3_token
[DEFAULT] domain_id_immutable
設定オプションは、厳密で不変なドメイン ID のために削除されました。
[endpoint_policy] enabled
設定オプションは、エンドポイントのポリシー拡張を常に有効にするために削除されました。
認証プラグイン
keystone.auth.plugins.saml2.Saml2
は、認証プラグインkeystone.auth.plugins.mapped.Mapped
のために削除されました。
memcache
とmemcache_pool
のトークン永続性バックエンドは、永続性を必要としない Fernet トークンの使用のために削除されました。
httpd/keystone.py
ファイルは、keystone-wsgi-admin
およびkeystone-wsgi-public
スクリプトのために削除されました。
keystone/service.py
ファイルを削除し、そのロジックはkeystone/version/service.py
に移動しました。
build_auth_context
ミドルウェアからの管理トークンのチェックが削除されました。デプロイメントで admin token`が必要な場合は、``keystone-paste.ini` を編集して、ペーストパイプラインでadmin_token_auth
がbuild_auth_context
の前にあるようにしてください。そうでなければadmin_token_auth
ミドルウェアをkeystone-paste.ini
から完全に削除してください。
[assignment] driver
のデフォルトはsql
になりました。設定で1つが提供されなかった場合のデフォルト割り当てドライバーを決定するロジックが削除されました。 Keystone は1つの割り当てドライバーのみをサポートしており、カスタム割り当てドライバを配備していない限り、変更しないでください。
[resource] driver
のデフォルトはsql
になりました。設定で1つが提供されなかった場合のデフォルトリソースドライバーを決定するロジックが削除されました。 Keystone は1つのリソースドライバーのみをサポートしており、カスタムリソースドライバを配備していない限り、変更しないでください。
[os_inherit] enabled
設定オプションは削除され、 OS-INHERIT 拡張が常に有効になりました。
[DEFAULT] domain_id_immutable
オプションは削除されました。これにより、ユーザー、グループ、およびプロジェクトのdomain_id
属性を変更する機能が削除されます。 この振る舞いは、エンティティのdomain_id
属性を更新することによって、デプロイヤーがエンティティをあるドメインから別のドメインに移行できるようにするために導入されました。 この機能は Mitaka リリースで非推奨になり、現在は廃止されました。