Перейти до основного вмісту

Стандартний OIDC клієнт

OIDC Відкриття

Casdoor повністю реалізував протокол OIDC. Якщо ваша програма вже використовує стандартну бібліотеку клієнта OIDC для підключення до іншого провайдера ідентичності OAuth 2.0, і ви хочете перейти на Casdoor, використання OIDC відкриття дуже спростить вам перехід. URL OIDC відкриття Casdoor:

<your-casdoor-backend-host>/.well-known/openid-configuration

Наприклад, URL OIDC відкриття для демонстраційного сайту: https://door.casdoor.com/.well-known/openid-configuration, і він містить наступну інформацію:

{
"issuer": "https://door.casdoor.com",
"authorization_endpoint": "https://door.casdoor.com/login/oauth/authorize",
"token_endpoint": "https://door.casdoor.com/api/login/oauth/access_token",
"userinfo_endpoint": "https://door.casdoor.com/api/userinfo",
"jwks_uri": "https://door.casdoor.com/.well-known/jwks",
"introspection_endpoint": "https://door.casdoor.com/api/login/oauth/introspect",
"response_types_supported": [
"code",
"token",
"id_token",
"code token",
"code id_token",
"token id_token",
"code token id_token",
"none"
],
"response_modes_supported": [
"login",
"code",
"link"
],
"grant_types_supported": [
"password",
"authorization_code"
],
"subject_types_supported": [
"public"
],
"id_token_signing_alg_values_supported": [
"RS256"
],
"scopes_supported": [
"openid",
"email",
"profile",
"address",
"phone",
"offline_access"
],
"claims_supported": [
"iss",
"ver",
"sub",
"aud",
"iat",
"exp",
"id",
"type",
"displayName",
"avatar",
"permanentAvatar",
"email",
"phone",
"location",
"affiliation",
"title",
"homepage",
"bio",
"tag",
"region",
"language",
"score",
"ranking",
"isOnline",
"isAdmin",
"isGlobalAdmin",
"isForbidden",
"signupApplication",
"ldap"
],
"request_parameter_supported": true,
"request_object_signing_alg_values_supported": [
"HS256",
"HS384",
"HS512"
]
}

Список бібліотек клієнтів OIDC

Ось список деяких бібліотек клієнтів OIDC для мов програмування, таких як Go та Java:

Бібліотека клієнта OIDCМоваПосилання
go-oidcGohttps://github.com/coreos/go-oidc
pac4j-oidcJavahttps://www.pac4j.org/docs/clients/openid-connect.html

Зверніть увагу, що вищезазначена таблиця не є вичерпною. Для повного списку бібліотек клієнтів OIDC ви можете знайти більше деталей за адресою:

  1. https://oauth.net/code/
  2. https://openid.net/certified-open-id-developer-tools/

Поля UserInfo OIDC

Наступна таблиця ілюструє, як поля UserInfo OIDC (через API /api/userinfo) відображаються з властивостей таблиці користувачів Casdoor:

Поле користувача CasdoorПоле UserInfo OIDC
Idsub
originBackendiss
Audaud
Namepreferred_username
DisplayNamename
Emailemail
Avatarpicture
Locationaddress
Phonephone

Ви можете побачити визначення UserInfo тут.