5

我正在尝试使用 Deadbolt 进行授权,并使用 Silhouette 或 SecureSocial 使用 Play 2.3.3 和 Scala 2.11.1 进行身份验证。

MyDeadboltHandler 有一个要覆盖的 getSubject ,为此我需要从请求中检索用户。使用 SecureSocial 2 非常简单。

override def getSubject[A](request: Request[A]): Option[Subject] = {
  SecureSocial.currentUser(request) match {
  case Some(identity) => // Subject could be created and returned
  case _ => None
}

我无法在剪影中找到任何方法来获取“当前用户”。此外,Silhouette 和 SecureSocial 都有 SecuredRequest[AnyContent](扩展 WrappedRequest),而 MyDeadboltHandler 中的 getRequest 方法需要一个 Request[A]。SecuredRequest 在 MyDeadboltHandler 中不可见的特征中定义。

任何建议都将受到高度赞赏。

4

0 回答 0