35.7. ipaidp Ansible モジュールの provider オプション
次の ID プロバイダー (IdP) は、OAuth 2.0 デバイス認可グラントフローをサポートしています。
- Azure AD を含む Microsoft Identity Platform
- GitHub
- Red Hat Single Sign-On (SSO) を含む Keycloak
- Okta
idp
ansible-freeipa
モジュールを使用してこれらの外部 IdP の 1 つへの参照を作成する場合、ipaidp
ansible-freeipa
Playbook タスクの provider
オプションで IdP のタイプを指定できます。指定すると、以下で説明する追加オプションをさらに指定できます。
provider: microsoft
Microsoft Azure IdP を使用すると、Azure テナント ID に基づくパラメーター設定を行うことができます。Azure テナント ID は、
organization
オプションで指定できます。live.com IdP のサポートが必要な場合は、オプションorganization common
を指定します。provider: microsoft
を選択すると、次のオプションを使用するように拡張されます。表内の文字列${ipaidporg}
は、organization
オプションの値に置き換えます。オプション 値 auth_uri: URI
https://login.microsoftonline.com/${ipaidporg}/oauth2/v2.0/authorize
dev_auth_uri: URI
https://login.microsoftonline.com/${ipaidporg}/oauth2/v2.0/devicecode
token_uri: URI
https://login.microsoftonline.com/${ipaidporg}/oauth2/v2.0/token
userinfo_uri: URI
https://graph.microsoft.com/oidc/userinfo
keys_uri: URI
https://login.microsoftonline.com/common/discovery/v2.0/keys
scope: STR
openid email
idp_user_id: STR
email
provider: google
provider: google
を選択すると、次のオプションを使用するように拡張されます。オプション 値 auth_uri: URI
https://accounts.google.com/o/oauth2/auth
dev_auth_uri: URI
https://oauth2.googleapis.com/device/code
token_uri: URI
https://oauth2.googleapis.com/token
userinfo_uri: URI
https://openidconnect.googleapis.com/v1/userinfo
keys_uri: URI
https://www.googleapis.com/oauth2/v3/certs
scope: STR
openid email
idp_user_id: STR
email
provider: github
provider: github
を選択すると、次のオプションを使用するように拡張されます。オプション 値 auth_uri: URI
https://github.com/login/oauth/authorize
dev_auth_uri: URI
https://github.com/login/device/code
token_uri: URI
https://github.com/login/oauth/access_token
userinfo_uri: URI
https://openidconnect.googleapis.com/v1/userinfo
keys_uri: URI
https://api.github.com/user
scope: STR
user
idp_user_id: STR
login
provider: keycloak
Keycloak を使用すると、複数のレルムまたは組織を定義できます。多くの場合、Keycloak はカスタムデプロイメントの一部であるため、ベース URL とレルム ID の両方が必要です。これらは、
ipaidp
Playbook タスクのbase_url
およびorganization
オプションで指定できます。--- - name: Playbook to manage IPA idp hosts: ipaserver become: false tasks: - name: Ensure keycloak idp my-keycloak-idp is present using provider ipaidp: ipaadmin_password: "{{ ipaadmin_password }}" name: my-keycloak-idp provider: keycloak organization: main base_url: keycloak.domain.com:8443/auth client_id: my-keycloak-client-id
provider: keycloak
を選択すると、次のオプションを使用するように拡張されます。base_url
オプションで指定した値により表内の文字列${ipaidpbaseurl}
が置き換えられ、organization
オプションで指定した値により文字列 ${ipaidporg} が置き換えられます。オプション 値 auth_uri: URI
https://${ipaidpbaseurl}/realms/${ipaidporg}/protocol/openid-connect/auth
dev_auth_uri: URI
https://${ipaidpbaseurl}/realms/${ipaidporg}/protocol/openid-connect/auth/device
token_uri: URI
https://${ipaidpbaseurl}/realms/${ipaidporg}/protocol/openid-connect/token
userinfo_uri: URI
https://${ipaidpbaseurl}/realms/${ipaidporg}/protocol/openid-connect/userinfo
scope: STR
openid email
idp_user_id: STR
email
provider: okta
Okta に新しい組織を登録すると、新しいベース URL が関連付けられます。このベース URL は、
ipaidp
Playbook タスクのbase_url
オプションで指定できます。--- - name: Playbook to manage IPA idp hosts: ipaserver become: false tasks: - name: Ensure okta idp my-okta-idp is present using provider ipaidp: ipaadmin_password: "{{ ipaadmin_password }}" name: my-okta-idp provider: okta base_url: dev-12345.okta.com client_id: my-okta-client-id
provider: okta
を選択すると、次のオプションを使用するように拡張されます。base_url
オプションに指定した値により、テーブル内の文字列${ipaidpbaseurl}
が置き換えられます。オプション 値 auth_uri: URI
https://${ipaidpbaseurl}/oauth2/v1/authorize
dev_auth_uri: URI
https://${ipaidpbaseurl}/oauth2/v1/device/authorize
token_uri: URI
https://${ipaidpbaseurl}/oauth2/v1/token
userinfo_uri: URI
https://${ipaidpbaseurl}/oauth2/v1/userinfo
scope: STR
openid email
idp_user_id: STR
email
関連情報