如何在SQL数据库中存储和检索朋友角色?

时间:2014-03-06 07:55:56

标签: sql clojure authorization

我不确定如何在数据库中存储Friend个角色。我可以存储字符串"#{::user}"或存储"user"并在检索时对其进行转换。前者是坏juju,我不确定如何做后者而不让天使哭。

(ns foo.handler
  (:require [cemerick.friend :as friend]
        (cemerick.friend [workflows :as workflows]
                         [credentials :as creds])))

;; A dummy in-memory user "database"
(def users {"root" {:username "root"
                    :password (creds/hash-bcrypt "admin")
                    :roles #{::admin}}
            "jane" {:username "jane"
                    :password (creds/hash-bcrypt "pw")
                    :roles #{::user}}})

(derive ::admin ::user)

1 个答案:

答案 0 :(得分:0)

这就是我目前正在做的事情;我确定这种情况很糟糕。有人请阻止我。从从数据库中提取的"user"开始:

foo.handler> #{(keyword (str *ns* "/" "user"))}
=> #{:foo.handler/user}