Start learning with our library of video tutorials taught by experts. Get started

Drupal 6: Online Presentation of Data

Controlling access to views


From:

Drupal 6: Online Presentation of Data

with Tom Geller

Video: Controlling access to views

We haven't talked much in this course about information security, although in practice, it should be your number one concern. For example, we've listed the birthday for each person in our family website, but there are many people who don't like others to know how old they are. Even more importantly, a criminal who knows both your name and birthdate might be able to use that information to impersonate you. So, using views and some additional access controls, we're going to hide that particular piece of information from the public at large, but leave it visible to people who have accounts on your family website.
Expand all | Collapse all
  1. 12m 56s
    1. Welcome
      1m 12s
    2. Reviewing requirements
      3m 35s
    3. Using the exercise files
      3m 11s
    4. Touring examples of data visualization
      4m 58s
  2. 27m 56s
    1. Planning data structure
      8m 26s
    2. Importing and manipulating data
      6m 40s
    3. Looking at Drupal's database
      6m 13s
    4. Deciding whether to store personal data as nodes or users
      6m 37s
  3. 1h 13m
    1. Understanding the Content Construction Kit (CCK)
      4m 57s
    2. Creating new content types with CCK
      7m 26s
    3. Hiding the Body field
      2m 46s
    4. Reflecting CCK field data in the Title field
      7m 28s
    5. Managing CCK field placement
      7m 34s
    6. Exploring CCK's other features
      8m 22s
    7. Using other CCK field types
      3m 25s
    8. Adding date information as a CCK field
      8m 43s
    9. Including images as CCK fields
      10m 23s
    10. Connecting content to existing nodes
      5m 58s
    11. Using taxonomies to categorize and group data
      5m 59s
  4. 53m 54s
    1. Understanding why views are useful
      6m 12s
    2. Using SimpleViews to create basic content views
      5m 49s
    3. Diving into the Views interface
      11m 16s
    4. Adding fields to a view
      7m 12s
    5. Understanding iconic controls in the Views interface
      7m 15s
    6. Surveying the Sort, Filter, and Field options in Views
      5m 40s
    7. Adding view displays as pages, blocks, and RSS feeds
      10m 30s
  5. 43m 34s
    1. Overriding default settings on view displays
      8m 56s
    2. Attaching more information to views
      10m 57s
    3. Improving view appearances with grid, list, and table formatting
      9m 20s
    4. Surveying other basic display settings in Views
      11m 3s
    5. Altering a view's appearance through CSS
      3m 18s
  6. 55m 8s
    1. Importing, exporting, and cloning views
      6m 9s
    2. Controlling access to views
      7m 19s
    3. Learning from built-in views
      5m 52s
    4. Creating views that aren't based on nodes
      10m 6s
    5. Extending views with arguments
      10m 17s
    6. Extending views with relationships
      7m 2s
    7. Going further with relationships
      8m 23s
  7. 46m 40s
    1. Understanding geographic data
      4m 26s
    2. Setting up the Location module
      16m 20s
    3. Entering geographic data with the Location module
      10m 10s
    4. Displaying basic maps with the GMap module
      6m 43s
    5. Integrating the GMap module with Views
      9m 1s
  8. 54m 21s
    1. Exporting data in tabular form
      11m 25s
    2. Planning with the calendar modules
      11m 31s
    3. Using the Charts module and Google Charts
      7m 11s
    4. Graphing data with Open Flash Chart
      4m 50s
    5. Making important data pop out with tag clouds
      7m 46s
    6. Putting it all together in an attractive package
      11m 38s
  9. 36s
    1. Conclusion
      36s

Watch this entire course now—plus get access to every course in the library. Each course includes high-quality videos taught by expert instructors.

Become a member
Please wait...
Drupal 6: Online Presentation of Data
6h 8m Intermediate Jul 01, 2009

Viewers: in countries Watching now:

Drupal's built-in data presentation tools offer several ways for web designers to clearly and attractively package their data. In Drupal 6: Online Presentation of Data, Tom Geller explains how Drupal handles data so users can set up intelligent structures and implement them with Drupal's Content Construction Kit. Tom also shows how a data-driven web site can improve its interactivity by using geographic data to connect real-world addresses to maps. Exercise files accompany the course.

Topics include:
  • Importing and manipulating data in Drupal
  • Presenting date-formatted information in calendars
  • Understanding Drupal's data-query interface, "Views"
  • Improving view appearances with grid, list, and table formatting
  • Importing, exporting, and cloning views
  • Extending views with arguments and relationships
Subjects:
Web CMS Web Development
Software:
Drupal
Author:
Tom Geller

Controlling access to views

We haven't talked much in this course about information security, although in practice, it should be your number one concern. For example, we've listed the birthday for each person in our family website, but there are many people who don't like others to know how old they are. Even more importantly, a criminal who knows both your name and birthdate might be able to use that information to impersonate you. So, using views and some additional access controls, we're going to hide that particular piece of information from the public at large, but leave it visible to people who have accounts on your family website.

To do this, we're going to stay logged in as the administrator in Firefox. However, I've also opened another browser, in my case Safari, and I haven't logged in. So, if I go to localhost, we can see the User login here. When I'm done, if everything goes right, we'll still see the date of birth in Firefox, but we won't in Safari. This date of birth appears in three places. First of all, it appears in the teaser as you see on this front page. Secondly, it appears in the full node when you click through to see the entire record of that person and thirdly, it appears in the People view that we created, and which is available at the URL, people.

Let's take care of first things first. We'll go back to our front page and hide that date of birth. You might remember that we do this by changing some settings in the Content type. To do that, go to Administer > Content management and Content types. Then we'll go to Person > Edit and Display fields and there's our Date of birth. I'm going to hide it both from the teaser and from the full node and I'm also going to hide the label by changing from Inline to Hidden and then click Save. Let's go back to our front page. Indeed it's hidden on the front page in the teaser view and it's hidden in the full node. However, it's still not hidden when we go to the view called People. There it is.

To make that change, we're going to have to edit that view. The easiest way of doing that is going up to this little ghost menu here and clicking Edit. We earlier named this page, Page for family. We're going to restrict that now so only people who are signed in can see that page. To do so, go down to Access and change from Unrestricted to those people who have the role of authenticated. As a side note, you can also restrict based on permission, which can get a little more complex. For now, we'll just go to Role and Update default display and then click authenticated user and click Update. Finally, we'll save that and to test, we'll go to that People page. Here in the signed in user it works.

Then we'll switch over to our anonymous user in Safari and see if we can get to that page. Indeed we can't. I'm going to make one more change in that view to see an additional feature of hiding views from anonymous users. So, I go back there and click on Edit and I'm going to add a menu, scroll down a little bit. [00:02:48.6 9] It will be a normal menu entry, it will say People and it will be in the primary menu which is the one in the upper right-hand corner in this theme. Click Update and Save. Now, you notice for the logged in user, we have this People link up here and that makes it a lot easier to go to that page.

If we switch back to our anonymous user and try to get there, we're not only denied from reaching the page, we also don't see the menu. Very useful. But let's give this anonymous user something to look at. To do that, we go back to our original view and edit it and I'm going to add a page display here. We already have a page for family. That's the one that shows the date of birth and everything else. Now, I'll create a more restrictive page for everyone. Add a page display, change the name of that page display so that it's page for everybody and click Update and finally, Save.

Now, you notice, we've got an error here because we created that page without a path. This is where the magic comes in. The Page for family is at the path People. I'm going to give the page for everybody the same exact path. Scroll down and say People and click Update and click Save. However, when I go back and edit it and make sure that I'm on the page for everybody, I'm then going to change the access. Now remember, this is in italics here. That means that it's copying the default display. We have to change that or we'll change it from Authenticated to Anonymous for every kind of display. So, I'll click there and we'll click Override and as always, I'd like to say Update after I override just to be sure.

Then we go up and click on the options for Access and change it from Authenticated user to Anonymous user and update. Finally, we save. Now, we have one page that authenticated users can see and another page at the same place that anonymous users can see. But at the moment, they both look exactly alike. Let's go back and edit that page for everybody and remove the fields that we don't want them to see. As you can see, they're in italics. So again, we're going to have to override. I'll click on Fields, scroll down, click on Override and Update. There, now we can change the fields viewed without ruining everything for the other displays. We want to get rid of that date of birth. So, we'll click on that, scroll down and remove. Finally, we go back up and save and let's test that. Here, we're logged in and we'll look at the People page. I'll just reload it to make sure everything is good.

Yup, we still see the date of birth. Now, when I switch over to our anonymous user and reload that People page, we see the same page without the date of birth. So, it really did work the way we wanted. Finally, we can go back to our original administrative view here and edit it and continue removing fields or in fact, we could change the style, so it's in a grid. We can do all sorts of things. I think I'm going to just remove the taxonomy terms, so that people don't know whether someone was born into the family or married into the family. And Update and Save. The last thing that you have to do for security is change the way that people can sign-up for the site. Very often people forget to do this and all of a sudden, they find they have all of these new users and they don't know who they are.

We'll go to Administer > User management and User settings. By default, Drupal lets anybody sign-up for a site with no administrator approval required. If you're going to secure a site like this, you also have to make sure that administrator approval is required or set it so that only site administrators can create new accounts. I'll do the more permissive one, which lets people apply for the site, but they have to be approved. Then I scroll to the bottom, click Save configuration and we've effectively secured our site. This example while effective is pretty simple.

But I think you could see that there are lot of ways you could go with this technique, in addition to adding security to your data-driven website. For example, we only use the built- in authenticated role, which includes everybody who has an account. But you could control access in several ways by using many different types of roles. In addition, on the Drupal.org website, there's over 100 access control modules available. To find them, go to Drupal.org, click on Modules and as you scroll down on the right-hand column, you'll see the categories User Access and Authentication and User management. For help in setting up those roles ,which is the key to having multi-level security, see the video "Controlling Site Access with User Management" in the Drupal Essential Training series from lynda.com.

Find answers to the most frequently asked questions about Drupal 6: Online Presentation of Data.


Expand all | Collapse all
Please wait...

Q: The exercise files for the course appear to be missing.

A: Full exercise files for this course were not provided because of the unusually large amount of images, modules, and other files that would have to be installed in specific places, in addition to the database. We hope to have a solution for future Drupal courses that installs all items in their correct places.

Q: During the course the author makes reference to being able to add data via the exercise files; however, the data is not in the exercise files.
A: During the recording of the title, some of the exercise files were removed, since the frequent updates to Drupal itself and to the modules that are needed to run the exercise files cause them to break.

The data referenced in the video consists mostly of names and addresses, which will need to be typed by hand.
Share a link to this course
Please wait... Please wait...
Upgrade to get access to exercise files.

Exercise files video

How to use exercise files.

Learn by watching, listening, and doing, Exercise files are the same files the author uses in the course, so you can download them and follow along Premium memberships include access to all exercise files in the library.
Upgrade now


Exercise files

Exercise files video

How to use exercise files.

For additional information on downloading and using exercise files, watch our instructional video or read the instructions in the FAQ.

This course includes free exercise files, so you can practice while you watch the course. To access all the exercise files in our library, become a Premium Member.

Upgrade now

Are you sure you want to mark all the videos in this course as unwatched?

This will not affect your course history, your reports, or your certificates of completion for this course.


Mark all as unwatched Cancel

Congratulations

You have completed Drupal 6: Online Presentation of Data.

Return to your organization's learning portal to continue training, or close this page.


OK
Become a member to add this course to a playlist

Join today and get unlimited access to the entire library of video courses—and create as many playlists as you like.

Get started

Already a member?

Become a member to like this course.

Join today and get unlimited access to the entire library of video courses.

Get started

Already a member?

Exercise files

Learn by watching, listening, and doing! Exercise files are the same files the author uses in the course, so you can download them and follow along. Exercise files are available with all Premium memberships. Learn more

Get started

Already a Premium member?

Exercise files video

How to use exercise files.

Ask a question

Thanks for contacting us.
You’ll hear from our Customer Service team within 24 hours.

Please enter the text shown below:

The classic layout automatically defaults to the latest Flash Player.

To choose a different player, hold the cursor over your name at the top right of any lynda.com page and choose Site preferencesfrom the dropdown menu.

Continue to classic layout Stay on new layout
Welcome to the redesigned course page.

We’ve moved some things around, and now you can



Exercise files

Access exercise files from a button right under the course name.

Mark videos as unwatched

Remove icons showing you already watched videos if you want to start over.

Control your viewing experience

Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.

Interactive transcripts

Click on text in the transcript to jump to that spot in the video. As the video plays, the relevant spot in the transcript will be highlighted.

Thanks for signing up.

We’ll send you a confirmation email shortly.


Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

Keep up with news, tips, and latest courses with emails from lynda.com.

Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

   
submit Lightbox submit clicked