【发布时间】:2018-07-22 09:58:39
【问题描述】:
使用默认的 laravel.passport 策略时,我传递了client_secret,当我运行npm run generate 并在dist 中搜索生成的代码时,我找不到client_secret;它是隐藏的,这很好,也是我想要的。
但是,当我使用自定义策略或本地策略并传递client_secret 时,我可以在 dist 中看到生成的代码中的秘密。
auth: {
strategies: {
password_grant_custom: {
_scheme: "~/auth/schemes/PassportPasswordScheme.js",
client_id: process.env.PASSPORT_PASSWORD_GRANT_ID,
client_secret: process.env.PASSPORT_PASSWORD_GRANT_SECRET,
endpoints: {
login: {
url: "/oauth/token",
method: "post",
propertyName: "access_token"
},
logout: false,
user: {
url: "api/v1/me",
method: 'get',
propertyName: false
}
}
},
'laravel.passport': {
url: "https://example.com",
client_id: process.env.PASSPORT_CLIENT_ID,
client_secret: process.env.PASSPORT_CLIENT_SECRET,
userinfo_endpoint: "https://example.com/api/v1/me",
}
}
},
如何隐藏client_secret,使其在公共代码中不可见?
【问题讨论】: