class Client
cangjie
public class Client功能:表示身份服务中的客户端配置。
成员概览
| 成员 | 功能 |
|---|---|
| init() | 创建空的客户端配置。 |
| init(String, Array<Secret>) | 使用客户端标识和密钥创建客户端配置。 |
| var clientId | 保存客户端标识。 |
| var clientName | 保存客户端显示名称。 |
| var description | 保存客户端描述信息。 |
| var clientUri | 保存客户端站点或帮助页地址。 |
| var protocolType | 保存客户端协议类型。 |
| var enabled | 标识当前客户端是否启用。 |
| var requireSecret | 标识当前客户端是否要求使用密钥。 |
| var requireConsent | 标识当前客户端是否需要用户同意。 |
| var consentLifetime | 保存用户同意记录的有效时长。 |
| var allowOfflineAccess | 标识当前客户端是否允许离线访问。 |
| var allowedClaims | 保存客户端可携带的声明列表。 |
| var allowedScopes | 保存客户端允许申请的作用域列表。 |
| var clientSecrets | 保存客户端可用的密钥列表。 |
| var allowedGrantTypes | 保存客户端允许使用的授权类型列表。 |
| var allowedRedirectUris | 保存客户端允许的回调地址列表。 |
| var postLogoutRedirectUris | 保存注销后允许跳转的地址列表。 |
| var accessTokenLifetime | 保存访问令牌生命周期。 |
| var identityTokenLifetime | 保存身份令牌生命周期。 |
| var authorizationCodeLifetime | 保存授权码生命周期。 |
| var refreshTokenLifetime | 保存兼容字段中的刷新令牌生命周期。 |
| var absoluteRefreshTokenLifetime | 保存绝对刷新令牌生命周期。 |
| var slidingRefreshTokenLifetime | 保存滑动刷新令牌生命周期。 |
| var refreshTokenUsage | 保存刷新令牌使用策略。 |
| var refreshTokenExpiration | 保存刷新令牌过期策略。 |
| var requirePkce | 标识当前客户端是否强制要求 PKCE。 |
| var allowPlainTextPkce | 标识当前客户端是否允许明文 PKCE 挑战方法。 |
init()
cangjie
public init()功能:创建空的客户端配置。
init(String, Array<Secret>)
cangjie
public init(clientId: String, clientSecrets: Array<Secret>)功能:使用客户端标识和密钥创建客户端配置。
参数:
- clientId:
String- 客户端标识。 - clientSecrets: Array<Secret> - 客户端密钥列表。
var clientId
cangjie
public var clientId = String.empty功能:保存客户端标识。
var clientName
cangjie
public var clientName = String.empty // P0: 客户端显示名称功能:保存客户端显示名称。
var description
cangjie
public var description = String.empty // 客户端描述功能:保存客户端描述信息。
var clientUri
cangjie
public var clientUri = String.empty // 客户端 URI(官网、帮助页面等)功能:保存客户端站点或帮助页地址。
var protocolType
cangjie
public var protocolType = "oidc" // P0: 协议类型(默认 oidc)功能:保存客户端协议类型。
var enabled
cangjie
public var enabled: Bool = true功能:标识当前客户端是否启用。
类型:Bool
var requireSecret
cangjie
public var requireSecret = true功能:标识当前客户端是否要求使用密钥。
var requireConsent
cangjie
public var requireConsent = false功能:标识当前客户端是否需要用户同意。
var consentLifetime
cangjie
public var consentLifetime: ?Int64 = None功能:保存用户同意记录的有效时长。
类型:?Int64
var allowOfflineAccess
cangjie
public var allowOfflineAccess = false功能:标识当前客户端是否允许离线访问。
var allowedClaims
cangjie
public var allowedClaims: Array<Claim> = []功能:保存客户端可携带的声明列表。
类型:Array<Claim>
var allowedScopes
cangjie
public var allowedScopes: Array<String> = []功能:保存客户端允许申请的作用域列表。
类型:Array<String>
var clientSecrets
cangjie
public var clientSecrets: Array<Secret> = [] // 客户端密钥列表功能:保存客户端可用的密钥列表。
类型:Array<Secret>
var allowedGrantTypes
cangjie
public var allowedGrantTypes: Array<String> = []功能:保存客户端允许使用的授权类型列表。
类型:Array<String>
var allowedRedirectUris
cangjie
public var allowedRedirectUris: Array<String> = []功能:保存客户端允许的回调地址列表。
类型:Array<String>
var postLogoutRedirectUris
cangjie
public var postLogoutRedirectUris: Array<String> = [] // P0: 注销后重定向 URI 列表功能:保存注销后允许跳转的地址列表。
类型:Array<String>
var accessTokenLifetime
cangjie
public var accessTokenLifetime = 3600 // 访问令牌生命周期(默认 1 小时)功能:保存访问令牌生命周期。
var identityTokenLifetime
cangjie
public var identityTokenLifetime = 300 // P0: ID Token 生命周期(默认 5 分钟)功能:保存身份令牌生命周期。
var authorizationCodeLifetime
cangjie
public var authorizationCodeLifetime = 300 // 授权码生命周期(默认 5 分钟)功能:保存授权码生命周期。
var refreshTokenLifetime
cangjie
public var refreshTokenLifetime = 3600 * 24 * 15 // 已废弃:使用 slidingRefreshTokenLifetime功能:保存兼容字段中的刷新令牌生命周期。
var absoluteRefreshTokenLifetime
cangjie
public var absoluteRefreshTokenLifetime = 2592000 // P0: 绝对刷新令牌生命周期(默认 30 天)功能:保存绝对刷新令牌生命周期。
var slidingRefreshTokenLifetime
cangjie
public var slidingRefreshTokenLifetime = 1296000 // P0: 滑动刷新令牌生命周期(默认 15 天)功能:保存滑动刷新令牌生命周期。
var refreshTokenUsage
cangjie
public var refreshTokenUsage = RefreshTokenUsage.ReUse功能:保存刷新令牌使用策略。
var refreshTokenExpiration
cangjie
public var refreshTokenExpiration = RefreshTokenExpiration.Absolute功能:保存刷新令牌过期策略。
var requirePkce
cangjie
public var requirePkce = false // 是否强制要求 PKCE功能:标识当前客户端是否强制要求 PKCE。
var allowPlainTextPkce
cangjie
public var allowPlainTextPkce = true // 是否允许 plain 方法(默认允许,但建议只允许 S256)功能:标识当前客户端是否允许明文 PKCE 挑战方法。