### Summary

While setting up sonarqube and automating setting the admin password directly in the database, I noticed that their bcrypt implementation is outdated and only supports the 2a version, while the password_hash bcrypt filter using passlib defaults to the latest version (2b).

I'd like to set the ident parameter of passlib bcrypt function from the password_hash filter (like with rounds).

Right now I'm doing this:
```yaml
    - name: encrypt password
      command:
        cmd: python3 -
        stdin: |
          from passlib.hash import bcrypt
          print(bcrypt.using(rounds=12,ident="2a").hash("{{ admin_password }}"))
      register: tmp
```
as a workaround.

Obviously, sonarqube should upgrade their bcrypt version, but ansible should also be able to handle this.

Passlib doc: https://passlib.readthedocs.io/en/stable/lib/passlib.hash.bcrypt.html#

### Issue Type

Feature Idea

### Component Name

password_hash

### Additional Information

```yaml
password: "{{ admin_password | password_hash('bcrypt', rounds=12, ident='2a') }}"
```

### Code of Conduct

- [X] I agree to follow the Ansible Code of Conduct
- A special case is using /dev/null as a path. The password lookup will generate a new random password each time,
        but will not write it to /dev/null. This can be used when you need a password without storing it on the controller.
    options:
      _terms:
         description:
           - path to the file that stores/will store the passwords
         required: True
      encrypt:
        description:
           - Which hash scheme to encrypt the returning password, should be one hash scheme from C(passlib.hash; md5_crypt, bcrypt, sha256_crypt, sha512_crypt).
           - If not provided, the password will be returned in plain text.
           - Note that the password is always stored as plain text, only the returning password is encrypted.
           - Encrypt also forces saving the salt value for idempotence.
           - Note that before 2.6 this option was incorrectly labeled as a boolean for a long time.
      chars:
        version_added: "1.4"
        description:
          - Define comma separated list of names that compose a custom character set in the generated passwords.
          - 'By default generated passwords contain a random mix of upper and lowercase ASCII letters, the numbers 0-9, and punctuation (". , : - _").'
          - "They can be either parts of Python's string module attributes or represented literally ( :, -)."
          - "Though string modules can vary by Python version, valid values for both major releases include:
            'ascii_lowercase', 'ascii_uppercase', 'digits', 'hexdigits', 'octdigits', 'printable', 'punctuation' and 'whitespace'."
          - Be aware that Python's 'hexdigits' includes lower and upper case versions of a-f, so it is not a good choice as it doubles
            the chances of those values for systems that won't distinguish case, distorting the expected entropy.
          - "To enter comma use two commas ',,' somewhere - preferably at the end. Quotes and double quotes are not supported."
        type: string
      length:
        description: The length of the generated password.
        default: 20
        type: integer