Windows computer security identifier


















Each time a user logs on, the system retrieves the SID for that user from the database and places it in the access token for that user. The system uses the SID in the access token to identify the user in all subsequent interactions with Windows security.

When a SID has been used as the unique identifier for a user or group, it cannot ever be used again to identify another user or group. This can be prevented by setting access control lists on a susceptible file, such that the effective permissions are determined by the user SID. If this user SID is duplicated on another computer, a user of a second computer having the same SID could have access to the files that the user of a first computer has protected. For example, if a user with a user account in a Windows domain leaves her job, an administrator deletes her Active Directory account, including the SID that identifies the account.

If she later returns to a different job at the same company, an administrator creates a new account, and the Windows Server operating system generates a new SID. Her two accounts represent two completely different security principals. A security identifier is a data structure in binary format that contains a variable number of values. The first values in the structure contain information about the SID structure. The remaining values are arranged in a hierarchy similar to a telephone number , and they identify the SID-issuing authority for example, the Windows Server operating system , the SID-issuing domain, and a particular security principal or group.

The following image illustrates the structure of a SID. The structure used in all SIDs that were created by a Windows Server operating system and earlier versions is revision level 1. Identifies the highest level of authority that can issue SIDs for a particular type of security principal. Holds the most important information in a SID, which is contained in a series of one or more subauthority values.

All values up to, but not including, the last value in the series collectively identify a domain in an enterprise. This part of the series is called the domain identifier. The last value in the series, which is called the relative identifier RID , identifies a particular account or group relative to a domain.

The components of a SID are easier to visualize when SIDs are converted from a binary to a string format by using standard notation:. The SID's most important information is contained in the series of subauthority values. The first part of the series -Y1-Y2-Y n -1 is the domain identifier. This element of the SID becomes significant in an enterprise with several domains, because the domain identifier differentiates SIDs that are issued by one domain from SIDs that are issued by all other domains in the enterprise.

No two domains in an enterprise share the same domain identifier. The last item in the series of subauthority values -Y n is the relative identifier. It distinguishes one account or group from all other accounts and groups in the domain. No two accounts or groups in any domain share the same relative identifier. SIDs for built-in accounts and groups always have the same domain identifier value: This value identifies the domain Builtin , which exists on every computer that is running a version of the Windows Server operating system.

It is never necessary to distinguish one computer's built-in accounts and groups from another computer's built-in accounts and groups because they are local in scope. They are local to a single computer, or in the case of domain controllers for a network domain, they are local to several computers that are acting as one.

Built-in accounts and groups need to be distinguished from one another within the scope of the Builtin domain. Therefore, the SID for each account and group has a unique relative identifier. A relative identifier value of is unique to the built-in Administrators group. No other account or group in the Builtin domain has a SID with a final value of No other domain in the enterprise uses this value as its domain identifier. No other account or group in the domain has a SID with a final value of When accounts and groups are stored in an account database that is managed by a local Security Accounts Manager SAM , it is fairly easy for the system to generate a unique relative identifier for each account and in a group that it creates on a stand-alone computer.

The SAM on a stand-alone computer can track the relative identifier values that it has used before and make sure that it never uses them again. In a network domain, however, generating unique relative identifiers is a more complex process.

Windows Server network domains can have several domain controllers. Each domain controller stores Active Directory account information. This means that, in a network domain, there are as many copies of the account database as there are domain controllers. In addition to this, every copy of the account database is a master copy. New accounts and groups can be created on any domain controller.

Changes that are made to Active Directory on one domain controller are replicated to all other domain controllers in the domain. The process of replicating changes in one master copy of the account database to all other master copies is called a multimaster operation. The process of generating unique relative identifiers is a single-master operation. One domain controller is assigned the role of relative identifier RID master, and it allocates a sequence of relative identifiers to each domain controller in the domain.

When a new domain account or group is created in one domain controller's replica of Active Directory, it is assigned a SID. The relative identifier for the new SID is taken from the domain controller's allocation of relative identifiers. When its supply of relative identifiers begins to run low, the domain controller requests another block from the RID master.

Each domain controller uses each value in a block of relative identifiers only once. The RID master allocates each block of relative identifier values only once. This process assures that every account and group created in the domain has a unique relative identifier.

It also assigns the new object a globally unique identifier GUID , which is a bit value that is unique not only in the enterprise, but also across the world. For example, the GUID is one of an object's properties that is published in the global catalog.

Searching the global catalog for a User object GUID produces results if the user has an account somewhere in the enterprise. In fact, searching for any object by ObjectGUID might be the most reliable way of finding the object you want to locate. When an object is assigned a GUID, it keeps that value for life. If a user moves from one domain to another, the user gets a new SID.

The SID for a group object does not change because groups stay in the domain where they were created. However, if people move, their accounts can move with them. If the administrator does this, the User object for the account needs a new SID. The relative identifier portion of a SID is unique relative to the domain; so if the domain changes, the relative identifier also changes.

Before the new value is written to the property, the previous value is copied to another property of a User object, SIDHistory. This property can hold multiple values. When a user signs in and is successfully authenticated, the domain authentication service queries Active Directory for all the SIDs that are associated with the user, including the user's current SID, the user's old SIDs, and the SIDs for the user's groups.

All these SIDs are returned to the authentication client, and they are included in the user's access token. That way, when users change jobs or move to other departments, you can easily adjust their access by removing them from certain groups and adding them to others. However, if you allow or deny an individual user access to resources, you probably want that user's access to remain the same no matter how many times the user's account domain changes.

The SIDHistory property makes this possible. When a user changes domains, there is no need to change the access control list ACL on any resource. The values of certain SIDs are constant across all systems. They are created when the operating system or domain is installed. They are called well-known SIDs because they identify generic users or generic groups.

There are universal well-known SIDs that are meaningful on all secure systems that use this security model, including operating systems other than Windows. In addition, there are well-known SIDs that are meaningful only on Windows operating systems. A group that includes users who are logged on to the physical console. Introduced in Windows Server R2. A security identifier to be replaced by the security identifier of the user who created a new object.

A security identifier to be replaced by the primary-group SID of the user who created a new object. A group that represents the current owner of the object. For example, after you leave IU and your ADS account is deleted, someone else can't later create a new ADS account with your old username and then use it to access network resources such as your Exchange account that have not been erased yet.

The Exchange servers know this person with your exact username isn't you, because the SID isn't the same. They are generated by a security "authority". On a local computer, that authority is Windows itself; on a domain or Active Directory network, it is the domain controller. This is document aotl in the Knowledge Base. Last modified on Skip to: content search login.



0コメント

  • 1000 / 1000