Authentication 具有授权系统的基本选项?

Authentication 具有授权系统的基本选项?,authentication,authorization,theory,Authentication,Authorization,Theory,简单的情况。一个现有的项目将需要认证和授权,我需要设计它。首先,我选择将整个过程分为两个模块,一个用于身份验证,另一个用于授权。两者都将被视为该项目的黑匣子。目前,身份验证模块将只使用用户的Windows帐户,将其链接到唯一的GUID,并将此GUID作为用户ID提供给其他模块。此模块的较新版本将发挥更大的“魔力”,但现在,这就足够了 授权模块将稍微复杂一些。它将使用GUID并将其链接到用户的访问权限。通过GUID,它可以与身份验证模块通信,并请求更多的用户信息 但是,除了角色之外,授权模块是否还

简单的情况。一个现有的项目将需要认证和授权,我需要设计它。首先,我选择将整个过程分为两个模块,一个用于身份验证,另一个用于授权。两者都将被视为该项目的黑匣子。目前,身份验证模块将只使用用户的Windows帐户,将其链接到唯一的GUID,并将此GUID作为用户ID提供给其他模块。此模块的较新版本将发挥更大的“魔力”,但现在,这就足够了

授权模块将稍微复杂一些。它将使用GUID并将其链接到用户的访问权限。通过GUID,它可以与身份验证模块通信,并请求更多的用户信息

但是,除了角色之外,授权模块是否还应该管理一些其他用户数据,还是将它们添加到身份验证模块中更好?(想想姓名、地址、电话、办公室名称、性别以及他们喜欢咖啡的方式……)

基本上,身份验证模块将包含一个接口,喜欢使用我们软件的客户可以使用默认的身份验证模块或使用该接口开发自己的版本。所以我不想让它保存太多的信息


我是否需要身份验证模块中的更多信息而不仅仅是角色?

如果使用身份验证的应用程序受益于共享信息,例如电子邮件地址的更改,则可以将其存储在身份验证系统中。事实上,身份验证调用可以实现为检索用户信息以及一些凭证(如密码)


另一方面,授权(角色、访问权限等)可能更特定于单个应用程序及其功能。

如果使用身份验证的应用程序受益于共享信息,例如电子邮件地址的更改,则可以将其存储在身份验证系统中。事实上,身份验证调用可以实现为检索用户信息以及一些凭证(如密码)

另一方面,授权(角色、访问权限等)可以更具体地针对单个应用程序及其功能