Create a multiuser geodatabase

In this first part of the workflow, you'll create an enterprise geodatabase on your SQL Server instance from ArcGIS Pro. First, you'll review the system requirements for deploying an enterprise geodatabase. Then you'll create an enterprise geodatabase and some database connections in ArcGIS Pro.

Note:

This tutorial will illustrate how to deploy an enterprise geodatabase using SQL Server as the relational database management system (RDBMS). You can also follow this tutorial if you are using another supported RDBMS, such as Oracle or PostgreSQL, but be aware that some RDBMS-specific elements may differ.

This tutorial assumes that you have SQL Server (or another supported RDBMS) already installed. You should have access to a specific instance on that server and to the database administrator (SA) account.

Review deployment components and connect to SQL Server

First, you'll ensure that your setup meets all the system requirements needed to create and manage an enterprise geodatabase. You need the following components:

  • SQL Server (or another supported RDBMS) installed, either on your own machine—for experimentation and learning purposes—or on a proper server.
  • An ODBC driver, the RDBMS client driver that allows the communication between ArcGIS and SQL Server.
  • Access to the database administrator account (SA) for the instance where you will create the geodatabase.
  • ArcGIS Server installed and authorized to retrieve the keycodes files needed to create the enterprise geodatabase.
  • ArcGIS Pro.
  • SQL Server Management Studio (SSMS) to connect and interact with SQL Server.
Note:

Other RDBMS supported besides SQL Server are Oracle, IBM Db2, PostgreSQL, and SAP HANA, and each one will have their own requirements to perform data management.

Tip:

If these components are not yet installed, a good starting point is to review the Base ArcGIS Enterprise deployment documentation and the Get started with ArcGIS Enterprise Builder tutorial. You should also check the system requirements for SQL Server and the system requirements for ArcGIS Server.

Having access to the database administrator credentials is essential, because you'll use this account to perform key steps such as creating the enterprise geodatabase and the users that can use it. The database administrator user in SQL Server is named SA (for system administrator). It may have other names in other RDBMS (for instance, Sys for Oracle or postgres for PostgreSQL).

Note:

The database administrator's main responsibilities are the following.

  • Has the highest level of privileges in your database, which gives this user full control of the database
  • Creates databases, users, and roles
  • Assigns database privileges and can block connections to the database
  • Sees all locks in the geodatabase
  • Backs up and recovers data
  • Configures storage

While you will spend most of this workflow in ArcGIS Pro, it is important to be familiar with the RDBMS-specific client where some general database management tasks are performed. In the case of SQL Server, that client is SQL Server Management Studio (SSMS). You'll open SSMS, connect to your database system, and explore some of its elements.

  1. On the Windows taskbar, click the Search button.

    Search button

  2. In the search box, type SSMS, and under Best match, click SQL Server Management Studio.

    SQL Server Management Studio in the list of results

    The SQL Server Management Studio application appears. You'll sign in as the database administrator account (SA user).

    Tip:

    If you installed SQL Server using SQL Authentication mode, the SA account was already created. If you chose the Windows Authentication mode, the SA account was disabled by default. In this latter case, you must follow these steps to enable it.

  3. In the Connect to Server window, choose the following parameter values:
    • For Server type, verify that Database Engine is selected.
    • For Server name, type the name of your SQL Server instance (in this tutorial LINNSQLRLT)
    • For Authentication, verify that SQL Server Authentication is selected.
    • For Login, type sa.
    • For Password, type the password for the sa user.

    Connect to Server window

  4. Click Connect.

    Once connected, you'll explore some of the database instance properties.

  5. Right-click the server's name and click Properties.

    Instance properties

  6. In the Server Properties window, on the General tab, examine the information displayed such as the instance name.

    Server Properties window

    It is important that you familiarize yourself with these details, as you will need them to create the enterprise geodatabase.

  7. Optionally, explore some other aspects of the SSMS interface.

You verified that your setup meets all system requirements to deploy an enterprise geodatabase. You also learned about the role of the SA user. Next, you'll create an enterprise geodatabase.

Create an enterprise geodatabase

You'll now create an enterprise geodatabase in SQL Server that will act as the primary data storage for the company's real estate data. You will create it directly in ArcGIS Pro. First, you'll download the ArcGIS Pro project that contains all the data you need for this workflow, and you'll open it.

  1. Download the RealEstateData_MLS.zip file and unzip it to a location on your computer, for example, the C: drive.
  2. Open the unzipped RealEstateData_MLS folder and double-click RealEstateData_MLS.aprx to open the project in ArcGIS Pro.

    RealEstateData_MLS.aprx file

  3. If prompted, sign in to your ArcGIS account.
    Note:

    If you don't have access to ArcGIS Pro or an ArcGIS organizational account, see options for software access.

    The project appears.

    Initial view of the project

    Next, you will use a geoprocessing tool to create an enterprise geodatabase.

    Note:

    In ArcGIS Pro, there are two geoprocessing tools that can help you create an enterprise geodatabase:

    You use the Create Enterprise Geodatabase tool to create an enterprise geodatabase and then create new data or load data into it. You use the Enable Enterprise Geodatabase tool on an existing database (which may or may not already have data in it), so that you can add geodatabase behavior and logic to it.

    In this workflow, you don't have an existing database, so you'll start from scratch using the Create Enterprise Geodatabase tool.

  4. On the ribbon, click the View tab, and in the Windows group, click Geoprocessing.

    Geoprocessing button

    The Geoprocessing pane appears.

  5. In the Geoprocessing pane search bar, type Create Enterprise Geodatabase. In the list of results, click Create Enterprise Geodatabase.

    Search results for Create Enterprise Geodatabase

  6. In the Create Enterprise Geodatabase tool, start filling out the parameters with the following values.
    • For Database Platform, choose SQL Server.
    • For Instance, type the name of your SQL Server instance (in this tutorial LINNSQLRLT)
    • For Database, type ListingsDB, the name of your new database.
    Tip:

    If you use an RDBMS other than SQL Server, some of the parameter values might differ. Moreover, some values will be specific to the database instance you are targeting (such as instance name).

    Create Enterprise Geodatabase parameters

    You will create the enterprise geodatabase as the SA user.

  7. Authenticate with the following information.
    • For Operating System Authentication, keep the box unchecked.
    • For Database Administrator, type sa.
    • For Database Administrator Password, type the password for the sa user.

    Database Administrator credentials

    The next section of the tool's parameters concerns the geodatabase administrator. The database administrator (SA user) and the geodatabase administrator are usually two different users with different responsibilities.

    Note:

    The geodatabase administrator's main responsibilities are the following.

    • Owns repository tables
    • Manages multiuser geodatabase configuration
    • Configures DBTUNE
    • Performs maintenance tasks
    • Can view all versions and manage top level (default) version
    • Can block connections to the database
    • Can update statistics/indexes on geodatabase tables
    • Sees and deletes all versions
    • Reconciles and posts changes from a named version
  8. Choose the following options for the geodatabase administrator.
    • For Sde Owned Schema, keep the box checked.
    • For Geodatabase Administrator Password, type the password for the sde user.

    Sde Owned Schema and Geodatabase Administrator Password parameters

    At the creation of the geodatabase, a geodatabase administrator user is granted specific privileges to perform geodatabase-specific administrative tasks. Based on the RDBMS used and your preferences, the geodatabase administrator can be the SDE user or the DBO user. In this tutorial, you'll use the SDE user. The SDE user is created only once and used for every enterprise geodatabase. If the SDE user already exists, as is the case above, you should enter its pre-existing password. If the SDE user doesn't exist yet, you will be prompted to create it and enter a new password of your choice. For more information, see the Create Enterprise Geodatabase documentation.

    Note:

    The choice between SDE or DBO schema will be different for each organization. In general, if you want to split geodatabase administrator and database administrator responsibilities, you will opt for the SDE-owned schema. If you uncheck the Sde Owned Schema box, you will be choosing a DBO-owned schema. Check the Comparison of geodatabase owners in SQL Server page for a more in-depth comparison.

  9. For Authorization File, point to the keycodes files generated when authorizing ArcGIS Server.
    Tip:

    The keycodes files are typically located in the <drive>\ProgramFiles\ESRI\License<release#>\sysgen folder on Windows or the /arcgis/server/framework/runtime/.wine/drive_c/ProgramFiles/ESRI/License<release#>/sysgen directory on Linux.

    Authorization File parameter

  10. Click Run.

    While the database is being created, a status bar shows progress.

    Status bar showing progress.

    After a few moments, the process is complete.

You now have a new enterprise geodatabase. The next step will be to connect to it.

Tip:

For more information on prerequisites and other details, see the Create a geodatabase in SQL Server documentation.

Connect to the new enterprise geodatabase

You successfully created an enterprise geodatabase named ListingsDB. You will now create database connections in ArcGIS Pro to access the ListingsDB geodatabase as the database administrator (SA) and as the geodatabase administrator. Through these connections, you can manage the geodatabase. You'll start with the SA connection.

  1. On the ribbon, on the View tab, in the Windows group, click Catalog Pane.

    Catalog Pane button

  2. Right-click the Database folder and choose New Database Connection.

    New Database Connection menu option

  3. In the Database Connection window, choose the following parameter values:
    • For Database Platform, choose SQL Server.
    • For Instance, type LINNSQLRLT.
    • For Authentication Type, choose Database authentication.
    • For User Name, type sa.
    • For Password, type the password for the sa account.
    • For Save User/Password, keep the box checked.
    • For Database, type ListingsDB.
    Note:

    Here again and for all the tools in the remainder of the workflow, you must adapt some of the parameter values to match the specifics of your system.

    Database Connection window

  4. Click OK.

    After a few moments, the new LINNSQLRLT.sde connection appears.

    Note:

    A Service Data Enterprise (SDE) database connection file is created when you make a connection to a database. This file is used to store the database information and credentials of the connecting user and facilitates subsequent secure connections.

    You'll rename the connection. To follow best practices, you'll apply the naming format: database name_database user.sde.

  5. In the Catalog pane, if necessary, click LINNSQLRLT.sde to get into edit mode. Type ListingsDB_SA.sde, and press Enter.

    ListingsDB_SA.sde database connection listed under Databases

    Note:

    The Databases folder also contains RealEstateData_MLS.gdb, which is a local file geodatabase. Later in the workflow, you'll migrate the content from RealEstateData_MLS.gdb to your new ListingsDB enterprise geodatabase.

    Similarly, you'll create a data connection for the geodatabase administrator SDE user.

  6. In the Catalog pane, right-click the Database folder, and choose New Database Connection.
  7. In the Database Connection window, choose the following parameter values:
    • For Database Platform, verify that SQL Server is selected.
    • For Instance, verify that LINNSQLRLT is selected.
    • For Authentication Type, verify that Database authentication is selected.
    • For User Name, type sde.
    • For Password, type the password for the sde user.
    • For Save User/Password, keep the box checked.
    • For Database, verify that ListingsDB is selected.
  8. Click OK.
  9. In the Catalog pane, rename the new LINNSQLRLT.sde connection to ListingsDB_GDBAdmin.sde.

    You now have two database connections: one for the database administrator (SA) and one for the geodatabase administrator (GDBAdmin).

    First two database connections listed under Databases

    Note:

    It is common practice to use the geodatabase administrator connection for database maintenance tasks. However, because the goal of this tutorial is to deploy a new enterprise geodatabase, and not to perform database maintenance, you won't use the geodatabase administrator user for the remainder of the workflow.

So far in this tutorial, you reviewed the system requirements for deploying an enterprise geodatabase and learned about the database administrator and the geodatabase administrator users. You created an enterprise geodatabase, and you connected to it as the database and geodatabase administrators.


Migrate real estate data

In this second part of the tutorial, you will continue to set up the enterprise geodatabase for your real estate business. You'll create a database user named GIS that will act as the data owner. You'll then create a database connection for that user and use it to migrate the real estate data.

Create a data owner user

You will create a user who plays the role of data owner for your ListingsDB enterprise geodatabase. The data owner is responsible for loading and managing data. Having this user will keep data management responsibilities separate from general database administration, as well as more common data editing tasks. You'll create the new user with the Create Database User tool. It is the SA account that can create new users, so you'll use the ListingsDB_SA.sde connection to perform this task.

Note:

The data owner user responsibilities are the following:

  • Owns and manages all data in a database
  • Manages data privileges
  • Modifies schema and manage fields and indexes
  • Sees schema locks on the data they own
  • Registers and unregisters data as versioned
  • Enables and disables archiving
  • Adds and removes attachments
  1. In the Catalog pane, under Databases, right-click ListingsDB_SA.sde, point to Administration, and choose Create Database User.

    Create Database User menu option

  2. In the Create Database User tool, choose the following parameter values.
    • For Input Database Connection, verify that ListingsDB_SA.sde is selected.
    • For Database User, type GIS.
    • For Database User Password, type a new password of your choice, for instance AcBdEgFh13243546!.

    The password must meet the SQL Server security requirements.

    Create Database User parameters

    Note:

    The Create Database User tool creates a database user with privileges sufficient to load data into the database. If your organization requires viewer and editor users without privileges to load data, the database administrator will need to perform the database user creation tasks using the database client tool, such as SSMS.

  3. Click Run.

    Once the tool has successfully run, you'll create a database connection to the GIS user.

  4. At the bottom of the Geoprocessing pane, switch back to the Catalog pane.

    Catalog tab

  5. In the Catalog pane, right-click the Database folder, and choose New Database Connection.
  6. In the Database Connection window, choose the following parameter values and click OK:
    • For Database Platform, verify that SQL Server is selected.
    • For Instance, verify that LINNSQLRLT is selected.
    • For Authentication Type, verify that Database authentication is selected.
    • For User Name, type GIS.
    • For Password, type the password for the GIS user, such as AcBdEgFh13243546!.
    • For Save User/Password, keep the box checked.
    • For Database, verify that ListingsDB is selected.
  7. Rename the new LINNSQLRLT.sde connection to ListingsDB_GIS.sde.

    ListingsDB_GIS.sde database connection

You now have a data owner user named GIS.

Import real estate data

Next, you'll use the GIS user to load the real estate data into the ListingsDB geodatabase. The data to be migrated is currently stored in the local file geodatabase, RealEstateData_MLS.gdb.

Note:

You can learn more about the difference between a file geodatabase and an enterprise geodatabase on the Types of databases page.

First, you'll take a look at the data.

  1. In the Catalog pane, under Databases, click the arrow next to RealEstateData_MLS.gdb to expand it.

    The RealEstateData_MLS.gdb file geodatabase contains four feature classes.

    • RealEstateBLL—A point feature class that represents buildings on leased land.
    • RealEstateParcel—A polygon feature class that represents parcel geometry joined to the county tax system information.
    • RealEstatePoliticalTownship—A polygon feature class that represents the boundary of political townships.
    • RealEstateSubdivision—A polygon feature class that represents all recorded subdivisions.

    The RealEstateData_MLS.gdb file geodatabase contains four feature classes.

    You'll use the Feature Class To Geodatabase tool to migrate the data.

    Note:

    In ArcGIS Pro, there are many other tools to help with data loading:

    • The Conversion toolbox contains a large set of tools to help you convert data between various formats. This includes the Feature Class to Geodatabase tool that you'll use in this workflow.
    • Import XML Workspace Document imports the contents of an XML workspace document into an existing geodatabase.
    • Append adds multiple input datasets into an existing target dataset.
    • Cut, Copy, and Paste operations can help move selected features and attributes values between different workspaces.
    • Merge combines multiple input datasets into a single, new output dataset.
    • The Data Interoperability toolbox helps extract, transform, and load a wide range of data formats using Safe Software's FME technology.
  2. Click the arrow next to RealEstateData_MLS.gdb to collapse back the file geodatabase.
  3. Right-click ListingsDB_GIS.sde, point to Import, and choose Feature Class(es).

    Feature Class(es) menu option

  4. In the Feature Class to Geodatabase window, for Input Features, click the Browse button.

    Feature Class to Geodatabase parameters

    You'll browse to the RealEstateData_MLS.gdb content and select it.

  5. In the Input Features window, click RealEstateData_MLS.gdb. Click RealEstateBLL, and press Shift and click RealEstateSubdivision.

    The four feature classes are selected.

    Input Features window

  6. Click OK.
  7. For Output Geodatabase, verify that ListingsDB_GIS.sde is selected.

    Feature Class to Geodatabase window populated with the list of feature classes

  8. Click Run.

    The process might take a few minutes to complete. You'll refresh the display of the enterprise geodatabase to see its new content.

  9. In the Catalog pane, right-click ListingsDB_GIS.sde and choose Refresh.

    Refresh menu option

  10. Expand ListingsDB_GIS.sde.

    The four feature classes under ListingsDB_GIS.sde

    The four feature classes have been copied over to the geodatabase. They are owned by the GIS user. Notice how the GIS username is prepended to each feature class name.

In this part of the workflow, you created a GIS user account to act as the data owner in the ListingsDB geodatabase. You then loaded four feature classes into the geodatabase using the Feature Class to Geodatabase tool.


Create data users and assign data privileges

Now that the ListingsDB enterprise geodatabase is loaded with data, you will create data users corresponding to each employee in the real estate company. You will then grant them privileges so that they can interact with the data in the way their job requires.

Create additional database users

You will create four data users, one for each employee: Sarah, Scott, Lisa, and Sandra. You will also create database connections for these users. You start with Sarah, using the same process you used to create the GIS user.

Note:

The data user's main responsibilities are the following.

  • Views and/or edits data based on privileges granted on the data by the data owner.
  • Uses data for map making and performing analysis.
  • Maintains features and maps.
  1. Right-click the ListingsDB_SA database connection, point to Administration, and choose Create Database User.
  2. In the Create Database User geoprocessing tool, fill in the appropriate parameters and click Run.
    • For Input Database Connection, verify that ListingsDB_SA.sde is selected.
    • For Database User, type sarah.
    • For Database User Password, type a new password of your choice, for instance BcBdEgFh13243546!.
  3. In the Catalog pane, right-click the Database folder and choose New Database Connection.
  4. In the Database Connection window, choose the following parameter values and click OK:
    • For User Name, type sarah.
    • For Password, type the password for that data user, such as BcBdEgFh13243546!.
    • Keep all other prefilled values.
  5. Rename the new LINNSQLRLT.sde connection to ListingsDB_SARAH.sde.
  6. Following the same steps you used for Sarah, create new users and database connections for the remaining employees (Scott, Lisa, and Sandra).
  7. In the Catalog pane, expand the four database connections you just created to check whether they contain any data.
    Tip:

    The arrows disappear when the database connections are empty.

    The four new database connections don't contain any data.

    The four database connections are empty. The reason is that, for now, these data users don't have any privileges to access data created by the GIS data owner.

    Note:

    Optionally, you can also expand the SA and GDBAdmin connections, and you'll notice that they can access all the data. The reason is that administration accounts are automatically granted data access, but other users must be explicitly granted privileges by the data owner to be allowed to access the data.

Each employee has now a corresponding data user. In the next section, you'll assign data privileges to them.

Assign privileges

The data owner must provide explicit access permissions to users before they can access the loaded data. There are two methods to grant these permissions: you can grant permissions directly to individual users, or you can group users into roles and grant permissions to the roles. The first method might appear simpler, but the second method is more efficient, as you can grant the same privileges to multiple users with a single action. In this workflow, you'll experiment with both options.

Data users will be granted access to the data based on their role in the company and their responsibilities, as summarized in the following table.

Employee nameRole in the companyResponsibilityData access needs

Sarah

Interim realtor manager

Oversees all listing types

Needs read/write access to all the data

Scott

Realtor

Presents and sells properties on leased land

Needs read/write access to the RealEstateBLL feature class

Lisa and Sandra

Realtor assistant

Help with customer inquiries

Need view access to the parcels and townships data

You'll first learn how to grant permissions directly to an individual user. This method provides the most granular level of control, as you can assign different levels of access to each individual user. Based on the information in the table above, Scott is a realtor, and his responsibility is to present and sell buildings on leased land. Because he is the only employee who works with this type of property, you will directly give his user read and write access to the RealEstateBLL feature class.

  1. In the Catalog pane, verify the ListingsDB_GIS.sde database connection is expanded, right-click the GIS.RealEstateBLL feature class, and choose Privileges.

    Privileges menu option

  2. In the Privileges window, click Add User.

    Add User button

    A list of all existing database users appears.

  3. In the list of users, check the box in front of scott, and click OK.

    User/Role window

    By default, the scott user is given privileges that will allow him to view (Select), but not edit (Insert, Update, Delete), the RealEstateBLL feature class.

    Privileges window

    Since Scott is the employee who actively lists and sells the properties, he will need write access to the data to add new properties and make listing adjustments. So, you'll give him more privileges.

  4. For scott, check the boxes next to Insert, Update, and Delete and click Apply.

    Privileges window with Insert, Update, and Delete selected for user scott

    Next, you'll explore the option of granting permissions to a role, instead of directly to a user. There are two options, once the role is set up:

    • Assign the role to a single user.
    • Assign the role to a group of users.

    You'll start with assigning a role to a single user, taking Sarah as an example. Sarah, the interim realtor manager, needs read and write access to all the data. To implement that, you'll create a manager role that has read and write access to all the feature classes, and then you'll add the sarah data user to it. This approach is particularly beneficial in this example, since Sarah is the interim manager and will soon be replaced. When a new manager is onboarded, you'll create a data user and add it to the manager role, which will give that new manager the exact data privileges they need.

    You'll create the manager role. Creating roles, like creating users, is done as the SA user.

  5. In the Catalog pane, right-click the ListingsDB_SA connection, point to Administration and choose Create Role.

    Create Role menu option

  6. In the Create Role window, choose the following parameter values:
    • For Input Database Connection, verify that ListingsDB_SA.sde is selected.
    • For Role, type Realtor Manager.
    • For Grant To Or Revoke From User(s), verify that Grant Role is selected.
    • For User Name(s), type sarah.

    Create Role parameters

  7. Click Run.

    Now that the Realtor Manager role exists, you'll change its privileges.

  8. In the Geoprocessing pane, click the Back button.

    Back button

  9. Search for the Change Privileges tool, and open it.

    Search results for Change Privileges

  10. In the Change Privileges tool, choose the following parameter values:
    • For Input Dataset, click Browse. In the Input Dataset window, click ListingsDB_GIS.sde, select the four feature classes, and click OK.
    • For User, type Realtor Manager.
    • For View (Select), choose Grant view privileges.
    • For Edit (Update/Insert/Delete), choose Grant edit privileges.

    Change Privileges parameters

  11. Click Run.

    Next, you'll try out the method of assigning a role to a group of users, taking Lisa and Sandra as examples. Lisa and Sandra are both realtor assistants, whose main task is to help with customer inquiries about parcels and political township boundaries. They won't make any data edits and only need view privileges. To implement this, you'll create a role named Realtor Assistant to which you'll add the lisa and sandra users. Then, you'll grant this role view-only access to the RealEstateParcel and RealEstatePoliticalTownship feature classes.

  12. In the Catalog pane, right-click the ListingsDB_SA connection, point to Administration and choose Create Role.
  13. In the Create Role window, choose the following parameter values and click Run.
    • For Input Database Connection, verify that ListingsDB_SA.sde is selected.
    • For Role, type Realtor Assistant.
    • For Grant To Or Revoke From User(s), verify that Grant Role is selected.
    • For User Name(s), type lisa,sandra.
    Tip:

    To specify multiple users, type the usernames separated by commas without any spaces.

    The Create Role tool can also be used to add new users to an existing role or remove them from it.

    Now that the Realtor Assistant role exists, you'll change its privileges.

  14. In the Geoprocessing pane, click the Back button, search for the Change Privileges tool, and open it.
  15. In the Change Privileges tool, choose the following parameter values and click Run:
    • For Input Dataset, click Browse. In the Input Dataset window, click ListingsDB_GIS.sde, select the GIS.RealEstateParcel and GIS.RealEstatePoliticalTownship, and click OK.
    • For User, type Realtor Assistant.
    • For View (Select), choose Grant view privileges.
    • For Edit (Update/Insert/Delete), verify that Do not change edit privileges is selected.

    Change Privileges parameters

You have assigned privileges to all data users, either directly or through roles.

Test user privileges

In this final section, you'll verify that the required data access requirements are being met for every employee to perform their jobs. You will start with Sarah.

  1. In the Catalog pane, right-click the ListingsDB_SARAH.sde database connection and choose Refresh.

    The contents of ListingsDB_SARAH.sde are updated to include recently added items.

  2. Expand ListingsDB_SARAH.sde to see its content.

    All four feature classes are now displayed under this connection. This means Sarah now has access to all real estate data, as expected.

    Feature classes that user sarah has access to

    Next, is Scott.

  3. In the Catalog pane, refresh ListingsDB_SCOTT.sde and expand it.

    Scott only has access to the RealEstateBLL feature class, which is what he needs for his job.

    Feature class that user scott has access to

    Last are Lisa and Sandra.

  4. In the Catalog pane, refresh ListingsDB_LISA.sde and ListingsDB_SANDRA.sde and expand them.

    Lisa and Sandra have only access to two feature classes, RealEstateParcel and RealEstatePoliticalTownship. This is as expected as Lisa and Sandra only need access to these two feature classes.

    Feature classes that users lisa and sandra have access to

    You verified that all employees have access to the right data. Next, you'll check that they have the right level of privilege on that data. You gave the Realtor Assistant role view access only. This means Lisa and Sandra should not be able to edit the data. You'll attempt to edit one of these feature classes as Lisa.

  5. In the Catalog pane, under ListingsDB_LISA.sde, right-click the GIS.RealEstateParcel feature class and choose Add To Current Map.

    Add To Current Map menu option

    The layer appears on the map.

    GIS.RealEstateParcel layer added to the map

  6. In the Contents pane, click the List by Editing button to list the layers by their editability status.

    List by Editing button

  7. Point to the exclamation mark next to the GIS.RealEstateParcel layer.

    The error message Layer is not editable appears. This confirms the lisa user has only view access and cannot edit the feature classes.

    Layer is not editable error message

    You'll now attempt to edit one of these feature classes as Sarah.

  8. In the Catalog pane, under ListingsDB_SARAH.sde, right-click the GIS.RealEstateBLL feature class and choose Add To Current Map.

    The layer appears on the map.

    GIS.RealEstateBLL layer added to the map

    In the Contents pane, on the List by Editing tab, the layer doesn't have a red exclamation mark because it is editable. This confirms the sarah user has view/write access to this feature class.

    GIS.RealEstateBLL doesn't have a red exclamation mark.

    Note:

    The layer displays a warning sign about versioning, indicating the RealEstateBLL layer is not versioned. This topic is beyond the scope of this tutorial, but the layer is properly editable.

  9. Optionally, proceed similarly to check whether Sandra and Scott have view only or view/write access to their data.

    You should find that Sandra has view only access, and Scott has view/write access.

In the final part of this tutorial, you created a data user account for each employee and assigned them privileges, so that they can access the real estate data they need. You did that either by granting permissions directly to an individual user or by grouping users into roles and granting permissions to the roles. You then verified that the data access was as planned for the users.

This tutorial provided you with a comprehensive guide on how to set up an enterprise geodatabase, in the context of a real estate business. You were introduced to the SQL Server properties and the importance of separating the database administrator, geodatabase administrator, data owner, and data user roles for security and data management purposes. You learned how to create an enterprise geodatabase, database users, and database connections, and you migrated real estate data using a conversion tool. Finally, you assigned data privileges to the employees based on their responsibilities. Through these steps, you created a functional and secure system to store and manage the data. The real estate business is now prepared to manage a larger volume of data and users. They can also plan more ambitious spatial data analyses to visualize demographic and economic trends and gain insights into the market characteristics and real estate investment opportunities in Linn County, Iowa.

You can find more tutorials in the tutorial gallery.