8.2. IdM でシステムアカウントを設定してユーザーパスワードを変更する
Identity Management (IdM) システムアカウントに適切な特権とロールを設定し、リセットを必要とせずに IdM ユーザーのパスワードを変更できるようにします。これにより、外部の認証情報管理システムが、初回ログイン時に有効なパスワードを設定できるようになります。
前提条件
-
System Accounts Administrators特権 (例:admin) を持つロールのメンバーである。
手順
特権認証情報を取得します。
$ kinit admin以下のいずれかの方法を使用して、システムアカウントを作成します。
システムアカウントの LDAP 認証に使用するランダムなパスワードを生成するには、
ipa sysaccount-addコマンドで--randomオプションを使用します。$ ipa sysaccount-add 'my-app' --random任意のパスワードをプロンプトに表示するには、
ipa sysaccount-addで--passwordオプションを使用します。$ ipa sysaccount-add 'my-app' --password
特権を作成します。
$ ipa privilege-add 'my-app password change privilege'my-app password change privilege に、ユーザーパスワードを変更する権限を追加します。
$ ipa privilege-add-permission 'my-app password change privilege' --permission 'System: Change User password'my-app ロールを作成します。
$ ipa role-add 'my-app role'my-app ロールに my-app password change privilege 特権を追加します。
$ ipa role-add-privilege 'my-app role' --privilege 'my-app password change privilege'my-app システムアカウントを my-app role ロールにメンバーとして追加します。
$ ipa role-add-member 'my-app role' --sysaccounts 'my-app'オプション: パスワードをリセットせずに変更できるようにするには、以下を入力します。
$ ipa sysaccount-policy 'my-app' --privileged=true
検証
- 外部の認証情報管理システムを使用して、IdM ユーザーのパスワードを変更します。
IdM ユーザーとして IdM にログインします。
$ kinit idmuserプロンプトが表示されたら、新しいパスワードを入力します。
idmuser's password:idmuser の Kerberos Ticket-Granting Ticket があることを確認します。
$ klistCredentials cache: API:0A481BBD-C3AA-473D-B43A-42CD19C7F045 Principal: idmuser@IDM.EXAMPLE.COM Issued Expires Principal Feb 23 16:06:56 2026 Feb 24 02:04:54 2026 krbtgt/IDM.EXAMPLE.COM@IDM.EXAMPLE.COMこの出力は、有効な Kerberos チケットを所有していることを示しています。idmuser のパスワードをリセットすることなくログインできました。