我知道AAD应用程序ID在一个目录(租户)中是唯一的。它是一个向导,显然在整个世界中应该是唯一的,但冲突可能是唯一的。问题是:Azure在生成AAD应用程序ID时是否可以验证其在所有其他目录中是否唯一?
答案 0 :(得分:3)
如果您查看Official document
的应用程序属性,您会知道application Id
是
分配给应用程序的应用程序的唯一标识符 Azure AD应用程序。不可为空。只读
Azure应用程序ID的唯一生成方式:
应用程序ID(GUID)像这样分解:
总共128位。 该算法的目标是使用时间和位置的组合(相对论极客的“时空坐标”)作为唯一性关键字。
但是,例如,有可能从同一台计算机上快速连续地生成两个GUID,它们之间的时间间隔太近,因此时间戳记会相同。这就是唯一化器的出现。
当时间似乎停滞不前(如果连续两次发出GUID请求)或倒退(如果系统时钟设置为比原来时间早的新时间),则uniquifier递增,以便“第二次是五点钟”生成的GUID与“第一次是五点钟”生成的GUID不会冲突。
一旦您了解了它的全部工作原理,很显然您就不能丢弃GUID的一部分,因为所有部分(固定部分除外)都可以一起工作以建立唯一性。这就是所有工作的方式。
注意:即使有时也考虑使用
GUID
的网络地址。如果您还有任何疑问,请随时分享。谢谢,祝您编程愉快!