Bit*_*ise 3 elixir phoenix-framework
我是第一次用凤凰应用程序设置监护人.我正在使用Guardian Config中的密钥敲打路障.我不知道在哪里保密密钥以及如何生成密钥?我基本上是从自述文件中复制并粘贴的,我确信这不正确,但我似乎无法在这个问题上找到合适的文档.以下是我尝试与数据库中的用户创建会话时遇到的问题.
erlang error: {:not_supported, ["P-521", :HS512]}
这是我当前的配置文件,这显然是错误的.
config :guardian, Guardian,
issuer: "PerriAir",
ttl: { 30, :days },
verify_issuer: true, # optional
secret_key: %{
"crv" => "P-521",
"d" => "axDuTtGavPjnhlfnYAwkHa4qyfz2fdseppXEzmKpQyY0xd3bGpYLEF4ognDpRJm5IRaM31Id2NfEtDFw4iTbDSE",
"kty" => "EC",
"x" => "AL0H8OvP5NuboUoj8Pb3zpBcDyEJN907wMxrCy7H2062i3IRPF5NQ546jIJU3uQX5KN2QB_Cq6R_SUqyVZSNpIfC",
"y" => "ALdxLuo6oKLoQ-xLSkShv_TA0di97I9V92sg1MKFava5hKGST1EKiVQnZMrN3HO8LtLT78SNTgwJSQHAXIUaA-lV"
},
serializer: PerriAir.GuardianSerializer
Run Code Online (Sandbox Code Playgroud)
关于如何生成正确密钥的任何提示都会很棒谢谢!
iex与iex -S mixJOSE.JWK.generate_key({:oct, 16}) |> JOSE.JWK.to_map |> elem(1)并复制输出的内容.secret_keyGuardian配置下的密钥中,其中有另一个密钥位于.以上示例适用于八位字节.您可以在https://github.com/ueberauth/guardian/issues/152上的hexdocs.pm/jose/key-generation和密钥生成选项中找到更多密钥类型.