Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用'访问Firebase;用户身份验证';使用Powershell激活_Powershell_Firebase_Firebase Authentication - Fatal编程技术网

使用'访问Firebase;用户身份验证';使用Powershell激活

使用'访问Firebase;用户身份验证';使用Powershell激活,powershell,firebase,firebase-authentication,Powershell,Firebase,Firebase Authentication,我已经使用连接到Firebase数据库的JavaScript创建了一个客户端应用程序,用户可以登录并保存/编辑Firebase存储的一些数据电子邮件和密码的身份验证用作 随后,我想编写一个Powershell脚本,该脚本将使用“任务调度器”设置为每天运行1次,读取每个用户的数据并执行一些业务逻辑 我错误地期望能够将我的服务器IP列入白名单,以获得对数据库的完全访问权限 如果我理解正确,我需要使用“JSON Web令牌(JWTs)”使用“自定义身份验证”,但Powershell没有可用的帮助程序库

我已经使用连接到Firebase数据库的JavaScript创建了一个客户端应用程序,用户可以登录并保存/编辑Firebase存储的一些数据电子邮件和密码的身份验证用作

随后,我想编写一个Powershell脚本,该脚本将使用“任务调度器”设置为每天运行1次,读取每个用户的数据并执行一些业务逻辑

我错误地期望能够将我的服务器IP列入白名单,以获得对数据库的完全访问权限

如果我理解正确,我需要使用“JSON Web令牌(JWTs)”使用“自定义身份验证”,但Powershell没有可用的帮助程序库。看了这一部分,但我不清楚需要做什么才能拿到代币

有人能给我一些关于如何让JWT与Firebase/Powershell一起工作的建议或示例代码,或者一些我可以使用Powershell完全访问BD的替代方法吗

提前谢谢


昆图斯

我做了一些可能对你有帮助的事情

#region TokenGenerator

function TokenGeneretor($secret){

$asm = [Reflection.Assembly]::LoadFile("D:\Firebase\FirebaseTokenGenerator.dll")
$tokenGenerator =  [Firebase.TokenGenerator]::new("$secret")
$authPayload = New-Object "System.Collections.Generic.Dictionary``2[System.String,System.Object]"
$authPayload.Add('uid', '1')
$authPayload.Add('some', 'arbitrary')
$authPayload.Add('data', 'here')
$Option = [Firebase.TokenOptions]::new(((Get-Date).AddHours(1)),$null,$true)
$token = $tokenGenerator.CreateToken($authPayload, $Option)

return $token

}



#endregion
TokenGeneretor-机密“123”


所提到的DLL是从中编译的代码。只需在VisualStudio中打开项目并进行编译。它将在项目的调试文件夹中播放DLL。

PowerShell是.NET,不是吗?因此,您可以编译Firebase.NET帮助程序并使用它生成JWT。谢谢你,弗兰克。但是,我不熟悉Visual Studio,也不熟悉如何在Powershell脚本中运行.NET,所以我还是有点困。