在公共存储库中公开Okta clientId是否安全?

时间:2018-11-22 08:56:49

标签: angular okta

要在Angular应用程序中配置Okta身份验证,需要在config文件中添加OIDC应用变量设置的app.module.ts变量。 source

const config = {
    issuer: 'https://dev-123456.oktapreview.com/oauth2/default',
    redirectUri: 'http://localhost:4200/implicit/callback',
    clientId: '{clientId}'
};

{clientId}替换为实际的clientId

将此应用程序推送到公共存储库将意味着clientId向所有人公开。我的问题是,这是否会构成任何形式的安全风险?

在研究中,我发现了有关Firebase使用的apiKey的几个类似问题:

对于Firebase,共享apiKey似乎没有害处。但是我不确定Okta的clientId是否使用类似的原则?

我还研究了一些在Github上实现Okta身份验证的公共存储库。这些存储库中的大多数似乎都暴露了clientId,这使我认为共享clientId没有问题。确实是这样吗?

1 个答案:

答案 0 :(得分:1)

将您的客户ID放入GitHub存储库中应该不会有任何安全问题。该值类似于汽车上的车牌。它只是一个标识符,会定期在URL中传递以进行授权请求。

客户机密是您不想暴露的价值。不应将其存储在源代码管理中。我建议存储一个虚拟值,并用环境变量覆盖它。