配置引用
编辑该页面配置引用
包配置
使用RSA / ECDSA
1 2 3 4 5 6 7 8 9 10 11
#配置/包/ lexik_jwt_authentication.yaml#……lexik_jwt_authentication:secret_key:' % kernel.project_dir % / config / jwt private.pem”#路径密钥或原始密钥,需要创建令牌public_key:' % kernel.project_dir % / config / jwt public.pem”#路径公钥或原始公钥,所需验证令牌pass_phrase:“yourpassphrase”#创建所需的令牌#其他公钥用于验证签名的令牌,如果“public_key”配置中提供的关键节点不验证令牌additional_public_keys:- - - - - -' % kernel.project_dir % / config / jwt public1.pem”- - - - - -' % kernel.project_dir % / config / jwt public2.pem”- - - - - -' % kernel.project_dir % / config / jwt public3.pem”
使用HMAC
1 2 3 4
#配置/包/ lexik_jwt_authentication.yaml#……lexik_jwt_authentication:secret_key:yoursecret
完整的默认配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17日18 19 20 21日22日23日24日25日26日27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
#配置/包/ lexik_jwt_authentication.yaml#……lexik_jwt_authentication:secret_key:~public_key:~pass_phrase:~token_ttl:3600年#牌TTL秒,默认为1小时user_identity_field:用户名#键,令牌的用户标识将存储负载clock_skew:0allow_no_expiration:假#设置为true,允许令牌没有经验的说法#标记编码/解码设置编码器:#牌编码器/解码器服务-基于lcobucci / jwt库的默认实现服务:lexik_jwt_authentication.encoder.lcobucci#编码器使用的加密算法的服务signature_algorithm:RS256#标记提取设置token_extractors:#寻找一个令牌授权头authorization_header:启用:真正的前缀:持票人名称:授权#检查令牌饼干饼干:启用:假名称:持票人#检查令牌在查询字符串参数query_parameter:启用:假名称:持票人#检查令牌饼干split_cookie:启用:假饼干:- - - - - -jwt_hp- - - - - -jwt_s#删除令牌使用cookie时从身体的反应remove_token_from_body_when_cookies_used:真正的
编码器的配置
服务
默认为lexik_jwt_authentication.encoder.lcobucci
是基于哪一个Lcobucci / JWT图书馆。
较高的一个先进的令牌编码加密支持,请参阅Spomky-Labs / lexik-jose-bridge基于大吗web-token / jwt-framework图书馆。
创建自己的编码器服务,看到JWT编码器服务定制章。
signature_algorithm
默认支持的算法的编码器的配置加密引擎。
- HS256、HS384 HS512 (HMAC)
- RS256、RS384 RS512 (RSA)
- ES256、ES384 ES512 (ECDSA)
自动生成饼干
您现在可以自动生成安全httpOnly曲奇饼干牌器时启用# 753。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
token_extractors:饼干:启用:真正的名称:持票人#……set_cookies:持票人:~#满配置默认值:#持票人:#一生:空(默认为令牌ttl)# samesite:宽松的#路径:/#域:空(null意味着symfony自动设置)ob娱乐下载#安全:真正的(缺省为true)# httpOnly:真
自动生成分裂饼干
你也能够自动生成分裂饼干。这种方法的好处这篇文章。
设置签名饼干(jwt_s)一生0创建会话cookie。
请记住,SameSite属性不支持在一些浏览器
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21日22日23日24日25日26日
token_extractors:split_cookie:启用:真正的饼干:- - - - - -jwt_hp- - - - - -jwt_sset_cookies:jwt_hp:生命周期:零samesite:严格的路径:/域:零httpOnly:假分裂:- - - - - -头- - - - - -有效载荷jwt_s:生命周期:0samesite:严格的路径:/域:零httpOnly:真正的分裂:- - - - - -签名
使用cookie时保持身体的令牌
当使用cookie响应默认为空的身体和结果代码204。可以修改这个行为。
记住,这个无效的一种需求前面提到的文章,即“JavaScript /前端不应该访问JWT”。
1
remove_token_from_body_when_cookies_used:假
安全配置
Symfob娱乐下载ony 5.3和更高版本,使用jwt
身份验证:
1 2 3 4 5 6 7 8 9 10 11 12 13
#配置/包/ security.yaml安全:enable_authenticator_manager:真正的防火墙:api:#……jwt:~#允许jwt身份#满配置默认值:# jwt:#提供者:空(你可以把提供者或者忽略这个配置)#身份:lexik_jwt_authentication.security。jwt_authenticator(默认jwt身份)#……
Symfob娱乐下载ony版本5.3之前,使用卫兵身份:
1 2 3 4 5 6 7
防火墙:#……api:#……警卫:身份验证器:- - - - - -“lexik_jwt_authentication.jwt_token_authenticator”
Database-less用户提供者
database-less身份验证(即信任到JWT数据而不是从数据库中重新加载用户),看到的“少一个数据库用户提供者”。
这项工作,包括代码示例,许可下Creative Commons冲锋队3.0许可证。