小编Neh*_*haM的帖子

Keycloak:密码重置后禁用重定向到帐户页面并显示消息

我正在使用 Keycloak,我想启用忘记密码流程。我已启用“登录时忘记密码”并配置 SMTP 来发送电子邮件。我从 keycloak 中得到的内容如下

-> 单击“忘记密码”链接 -> 输入用户名或电子邮件 -> 用户收到一封包含重置链接的电子邮件 -> 单击该链接 -> 重置密码,然后提交 ->用户登录,然后用户将被重定向到帐户页面。

我想要达到的目标如下

-> 单击“忘记密码”链接 -> 输入用户名或电子邮件 -> 用户收到一封包含重置链接的电子邮件 -> 单击该链接 -> 重置密码,然后提交 -> 显示一条消息“您的密码已更新”。并且不要登录该用户。留在该页面上。

原因是,对于我的用例,用户不应该访问 Keycloak 上的帐户页面。

在重置凭据的身份验证流程中,我只能配置最多重置凭据。

有什么方法可以禁用密码重置后自动登录用户然后重定向到帐户页面的操作吗?

我研究了几个问题,但找不到如何实现这一目标的答案。

PS:我正在使用具有自定义主题的 Keycloak docker 映像。如果可以使用自定义主题选项进行配置,我就有机会这样做。

先感谢您。

authentication redirect forgot-password reset-password keycloak

8
推荐指数
1
解决办法
1万
查看次数

Scala Spark:如何从字符串列表创建RDD并转换为DataFrame

我想从一个可以匹配现有模式的字符串列表中创建一个DataFrame.这是我的代码.

    val rowValues = List("ann", "f", "90", "world", "23456") // fails
    val rowValueTuple = ("ann", "f", "90", "world", "23456") //works

    val newRow = sqlContext.sparkContext.parallelize(Seq(rowValueTuple)).toDF(df.columns: _*)

    val newdf = df.unionAll(newRow).show()
Run Code Online (Sandbox Code Playgroud)

如果我使用字符串列表,相同的代码将失败.我看到的区别在于创建了rowValueTuple一个Tuple.由于rowValues列表的大小动态变化,我无法手动创建Tuple*对象.我怎样才能做到这一点?我错过了什么?如何平整此列表以满足要求?

请欣赏你的帮助.

scala union-all dataframe apache-spark rdd

7
推荐指数
1
解决办法
4万
查看次数

Scala-Spark使用参数值动态调用groupby和agg

我想编写自定义分组和聚合函数来获取用户指定的列名和用户指定的聚合映射.我不知道前面的列名和聚合映射.我想写一个类似下面的函数.但我是Scala的新手,我无法解决它.

def groupAndAggregate(df: DataFrame,  aggregateFun: Map[String, String], cols: List[String] ): DataFrame ={
  val grouped = df.groupBy(cols)
  val aggregated = grouped.agg(aggregateFun)
  aggregated.show()
}
Run Code Online (Sandbox Code Playgroud)

并希望称之为

val listOfStrings =  List("A", "B", "C")
val result = groupAndAggregate(df, Map("D"-> "SUM", "E"-> "COUNT"), listOfStrings)
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?任何人都可以帮助我.

customization scala group-by aggregate apache-spark

4
推荐指数
1
解决办法
3851
查看次数

离子应用程序的 Keycloak:带有cordova-native 的keycloak-js 不起作用

我正在尝试在我的 ionic(4) 科尔多瓦应用程序中使用 Keycloak-js(来自 4.4.0.Final)库。我遵循了文档中示例和说明。我已经安装, , . 添加到我的 这就是我对 config.xml 的修改的样子。cordova-plugin-browsertabcordova-plugin-deeplinkscordova-plugin-inappbrowser<preference name="AndroidLaunchMode" value="singleTask" />config.xml

<widget id="org.phidatalab.radar_armt"....>

<plugin name="cordova-plugin-browsertab" spec="0.2.0" />
<plugin name="cordova-plugin-inappbrowser" spec="3.0.0" />
<plugin name="cordova-plugin-deeplinks" spec="1.1.0" />
<preference name="AndroidLaunchMode" value="singleTask" />
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<universal-links>
    <host name="keycloak-cordova-example.exampledomain.net" scheme="https">
        <path event="keycloak" url="/login" />
    </host>
</universal-links>
</widget>
Run Code Online (Sandbox Code Playgroud)

我使用的服务Keycloak-js如下所示。

static init(): Promise<any> {
  // Create a new Keycloak Client Instance
  let keycloakAuth: any = new Keycloak({
      url: 'https://exampledomain.net/auth/', …
Run Code Online (Sandbox Code Playgroud)

android oauth-2.0 cordova keycloak ionic4

2
推荐指数
1
解决办法
5973
查看次数