18.11. 身份提供程序操作


列出可用的身份提供程序

使用 serverinfo 端点列出可用的身份提供程序。

例如:

$ kcadm.sh get serverinfo -r demorealm --fields 'identityProviders(*)'
Copy to Clipboard Toggle word wrap
注意

红帽单点登录处理 serverinfo 端点与 realms 端点 类似。Red Hat Single Sign-On 无法解析相对于目标域的端点,因为它存在于任何特定域之外。

列出配置的身份提供程序

使用 identity-provider/instances 端点。

例如:

$ kcadm.sh get identity-provider/instances -r demorealm --fields alias,providerId,enabled
Copy to Clipboard Toggle word wrap

获取特定配置的身份提供程序

使用身份提供程序 的别名 属性构造端点 URI,如 identity-provider/instances/ALIAS 来获取特定的身份提供程序。

例如:

$ kcadm.sh get identity-provider/instances/facebook -r demorealm
Copy to Clipboard Toggle word wrap

删除特定配置的身份提供程序

使用 delete 命令以及您用来获取特定配置的身份提供程序相同的端点 URI。

例如:

$ kcadm.sh delete identity-provider/instances/facebook -r demorealm
Copy to Clipboard Toggle word wrap

配置 Keycloak OpenID Connect 身份提供程序

  1. 在创建新身份提供程序实例时,使用 keycloak-oidc 作为 providerId
  2. 提供配置属性: authorizationUrltokenUrlclientIdclientSecret

    例如:

    $ kcadm.sh create identity-provider/instances -r demorealm -s alias=keycloak-oidc -s providerId=keycloak-oidc -s enabled=true -s 'config.useJwksUrl="true"' -s config.authorizationUrl=http://localhost:8180/auth/realms/demorealm/protocol/openid-connect/auth -s config.tokenUrl=http://localhost:8180/auth/realms/demorealm/protocol/openid-connect/token -s config.clientId=demo-oidc-provider -s config.clientSecret=secret
    Copy to Clipboard Toggle word wrap

配置 OpenID Connect 身份提供程序

配置通用 OpenID Connect 供应商的方式与配置 Keycloak OpenID Connect 供应商相同,但您需要将 providerId 属性值设置为 oidc

配置 SAML 2 身份提供程序

  1. 使用 saml 作为 providerId
  2. 提供配置属性: singleSignOnServiceUrlnameIDPolicyFormat,以及 signatureAlgorithm

例如:

$ kcadm.sh create identity-provider/instances -r demorealm -s alias=saml -s providerId=saml -s enabled=true -s 'config.useJwksUrl="true"' -s config.singleSignOnServiceUrl=http://localhost:8180/auth/realms/saml-broker-realm/protocol/saml -s config.nameIDPolicyFormat=urn:oasis:names:tc:SAML:2.0:nameid-format:persistent -s config.signatureAlgorithm=RSA_SHA256
Copy to Clipboard Toggle word wrap

配置 Facebook 身份提供程序

  1. 使用 facebook 作为 providerId
  2. 提供 config attributes: clientIdclientSecret。您可以在 Facebook Developers 应用程序配置页面中找到这些属性。如需更多信息,请参阅 facebook identity broker 页面。

    例如:

    $ kcadm.sh create identity-provider/instances -r demorealm -s alias=facebook -s providerId=facebook -s enabled=true  -s 'config.useJwksUrl="true"' -s config.clientId=FACEBOOK_CLIENT_ID -s config.clientSecret=FACEBOOK_CLIENT_SECRET
    Copy to Clipboard Toggle word wrap

配置 Google 身份提供程序

  1. 使用 google 作为 providerId
  2. 提供 config attributes: clientIdclientSecret。您可以在应用程序的 Google Developers 应用程序配置页面中找到这些属性。如需更多信息,请参阅 Google identity broker 页面。

    例如:

    $ kcadm.sh create identity-provider/instances -r demorealm -s alias=google -s providerId=google -s enabled=true  -s 'config.useJwksUrl="true"' -s config.clientId=GOOGLE_CLIENT_ID -s config.clientSecret=GOOGLE_CLIENT_SECRET
    Copy to Clipboard Toggle word wrap

配置 Twitter 身份提供程序

  1. 使用 twitter 作为 providerId
  2. 提供配置属性 client IdclientSecret。您可以在应用程序的 Twitter 应用程序配置页面中找到这些属性。如需更多信息 ,请参阅 sVirt 身份代理 页面。

    例如:

    $ kcadm.sh create identity-provider/instances -r demorealm -s alias=google -s providerId=google -s enabled=true  -s 'config.useJwksUrl="true"' -s config.clientId=TWITTER_API_KEY -s config.clientSecret=TWITTER_API_SECRET
    Copy to Clipboard Toggle word wrap

配置 GitHub 身份提供程序

  1. 使用 github 作为 providerId
  2. 提供配置属性 client IdclientSecret。您可以在应用程序的 GitHub Developer Application Settings 页面中找到这些属性。如需更多信息,请参阅 Github 身份代理 页面。

    例如:

    $ kcadm.sh create identity-provider/instances -r demorealm -s alias=github -s providerId=github -s enabled=true  -s 'config.useJwksUrl="true"' -s config.clientId=GITHUB_CLIENT_ID -s config.clientSecret=GITHUB_CLIENT_SECRET
    Copy to Clipboard Toggle word wrap

配置 LinkedIn 身份提供程序

  1. 使用 链接 作为 providerId
  2. 提供配置属性 client IdclientSecret。您可以在应用程序的 LinkedIn Developer Console 应用程序页面中找到这些属性。如需更多信息,请参阅 LinkedIn 身份代理 页面。

    例如:

    $ kcadm.sh create identity-provider/instances -r demorealm -s alias=linkedin -s providerId=linkedin -s enabled=true  -s 'config.useJwksUrl="true"' -s config.clientId=LINKEDIN_CLIENT_ID -s config.clientSecret=LINKEDIN_CLIENT_SECRET
    Copy to Clipboard Toggle word wrap

配置 Microsoft Live 身份提供程序

  1. 使用 microsoft 作为 providerId
  2. 提供配置属性 client IdclientSecret。您可以在应用程序的 Microsoft Application Registration Portal 页面中找到这些属性。如需更多信息,请参阅 Microsoft 身份代理 页面。

    例如:

    $ kcadm.sh create identity-provider/instances -r demorealm -s alias=microsoft -s providerId=microsoft -s enabled=true  -s 'config.useJwksUrl="true"' -s config.clientId=MICROSOFT_APP_ID -s config.clientSecret=MICROSOFT_PASSWORD
    Copy to Clipboard Toggle word wrap

配置 Stack Overflow 身份提供程序

  1. 使用 stackoverflow 命令作为 providerId
  2. 提供配置属性 client IdclientSecret。您可以在应用程序的 Stack Apps OAuth 页面中找到这些属性。如需更多信息,请参阅 Stack Overflow 身份代理 页面。

    例如:

    $ kcadm.sh create identity-provider/instances -r demorealm -s alias=stackoverflow -s providerId=stackoverflow -s enabled=true  -s 'config.useJwksUrl="true"' -s config.clientId=STACKAPPS_CLIENT_ID -s config.clientSecret=STACKAPPS_CLIENT_SECRET -s config.key=STACKAPPS_KEY
    Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat