AJAX History Manager
Solves
Back button
Send links
Reporting
History of reporting
Architecture
Report Life Cycle
Capabilities
ASP.NET Security
Authentication
Principal
Identity
Authorization
Role Based Security
New security features in ASP.NET 2.0
Authentication Providers
Built in ASP.NET Controls
2. Peter Gfader SSA @ SSW Loves C# and .NET (Java not anymore) Specializes in Windows Forms ASP.NET TFS testing Automated tests Silverlight
3. On the task “Filter the ToDoList” Add “Show all” to the drop down list Homework?
4. On the task “Filter the ToDoList” Add “Show all” to the drop down list LinqDataSource.Where = ””; LinqDataSource.WhereParameters.Clear(); ListView.Databind(); Homework?
6. Admin Stuff Attendance You initial sheet Hands On Lab You get me to initial sheet Certificate At end of 10 sessions If I say if you have completed successfully
7. User Experience / Usability AJAX AdditionallyStyling the GridView http://www.cyberslingers.com/Sandbox/GridView.aspx Last Week
11. Agenda ASP.NET Security Authentication Principal Identity Authorization Role Based Security New security features in ASP.NET 2.0 Authentication Providers Built in ASP.NET Controls
13. Back button Send link of your current view http://maps.google.com/ ?? Pain!
14. 1. Enable history in ScriptManager <asp:ScriptManagerID="ScriptManager1"runat="server" EnableHistory="true"/>
15. Every time this is a relevant history point Maybe on each AJAX request? 2. Add a history points ScriptManager1.AddHistoryPoint( "CurrentImage", Image1.ImageUrl);
16. Restore in that your state 3. Wire up Navigate event <asp:ScriptManagerID="ScriptManager1"runat="server" EnableHistory="true"onnavigate="ScriptManager1_Navigate"/> protectedvoid ScriptManager1_Navigate(object sender, HistoryEventArgs e) { Image1.ImageUrl= e.State["CurrentImage“]; }
17. Browser dependent Internet Explorer iframe can cause an additional request to the server Implementation – behind the scenes?
18. URL holds state of AJAX request Send links http://localhost:28496/WebSite/PictureViewer.aspx#&&/wEXAQUOQ3VycmVudFBpY3R1cmUFFn4vaW1hZ2VzLzAxMTJfMDAxNS5qcGe5ZmthLzJ56OTk3xtCWl64oqFRl/SPknA7Y8Vkox5OvA URLs are added to the history of browser Back button Recap
20. SQL Server Reporting Services SSRS Initially released as add-on for SQL Server 2000 in 2004 Part of SQL 2005 / SQL 2008 Web-based reporting solution Who has done a report?
21. History of Reporting 1991-3 – .XLS and .DOC 1992 – Access 1.0 1994 – VB 3 with Crystal Built-In 1995-99 VB 4, 5, 6 (VB Report Designer) A lot continuing with Crystal 1998 – Web .ASP .DOC, .XLS, .PDF 2001 – Visual Studio .NET with Crystal Reports 2004 – Reporting Services as add-on for SQL Server 2000 2005 – Reporting Services with SQL Server 2005 2008 – Reporting Services with SQL Server 2008 2009 – ReportBuilder v3 released
23. SQL Server 2005 BI Analyze Integrate Report Data presentation and distribution Data access for the masses Data acquisition from source systems and integration Data transformation and synthesis Data enrichment with business logic and hierarchical views Data discovery through data mining
24. SQL Server BI Platform Reporting Services Management Tools Development Tools Analysis Services OLAP & Data Mining Integration Services ETL SQL Server Relational Engine
25. Data Sources (SQL, OLE DB, XML/A, ODBC, Oracle, Custom) Reporting Services Architecture Custom Application Office Browser XML Web Service Interface Security Services (NT, Passport, Custom) Report Server Report Processing Data Processing Security Scheduling & Delivery Rendering SQL Server Output Formats (HTML, Excel, PDF, Custom) Delivery Targets (E-mail, SharePoint, Custom)
26. Reporting Lifecycle Authoring Management Delivery Reporting Services is an open and extensible platform supporting the authoring, management and delivery of rich, interactive reports to the entire enterprise.
27. Reports are defined in Report Definition Language (RDL), a documented XML schema Use Microsoft or 3rd party tools that support RDL Create single reports from multiple data sources(SQL, OLE DB, ODBC, Oracle, and .NET data providers) Report Authoring More info on the RDL spec: www.microsoft.com/sql/reporting
28. Data regions Tablix (SQL 2008) Table -> Tablix List (like Access) -> Tablix Matrix -> Tablix Chart Subreports Images Report Authoring - Controls
30. Tablix - Table Use a table to display detail data Organize the data in row groups, or both. The Table template contains three columns with a table header row and a details row for data.
31. Tablix - Matrix Use a matrix to display aggregated data summaries Grouped in rows and columns, similar to a PivotTable or crosstab. The number of rows and columns for groups is determined by the number of unique values for each row and column groups
32. Tablix - List Use a list to create a free-form layout. You are not limited to a grid layout, but can place fields freely inside the list. You can use a list to design a form for displaying many dataset fields or as a container to display multiple data regions side by side for grouped data.
37. Report definitions, folders, and resources are published and managed in a reporting web service Managed reports can be executed either on-demand or via schedule and can be cached for consistency and performance Scalable & Extensible server architecture Report Management
38. Role-Based Security Model Operation Tasks Sets of low-level operations Item-level (e.g., create report) or system-level (e.g., manage jobs) Not customizable Roles Sets of tasks Default roles installed by default (browser, publisher) Default roles can be customized, new ones created Roles identified by name, localized Groups/Users Windows/Active Directory or custom authentication users Role Assignments Associates groups/users with Roles Inherited from parent in namespace Task Role Group or User Role Assignment Item
39. Logging and Monitoring Performance Monitoring Counters for performance Report Execution for analysis Event Log Integration Critical events and errors Trace Events Can traces all server activities, response times, security events Detail level depends on configuration setting
40. Traditional (paper) and interactive (web) reports On-demand (“pull”) or event-based (“push”) delivery Choose from multiple formats (HTML, Excel, PDF, XML) Deliver reports to many devices (e-mail, file share, etc.) Ad-hoc Reporting Report Delivery
41. Scheduling Management events can be scheduled on the report server Caching, Subscriptions, History Schedules are stored in database and integrated with SQL Agent When triggered, Agent adds entry to queue Scheduled events are queued in database and polled by Windows service
42. What did we see? Table Control List Control Chart Control Matrix Control Subreports
43. What didn't we see? ASP.NET Chart Control http://weblogs.asp.net/scottgu/archive/2008/11/24/new-asp-net-charting-control-lt-asp-chart-runat-quot-server-quot-gt.aspx Dundas Chart (SSRS) http://www.dundas.com/Products/Chart/RS/Features/NewFeatures.aspx ASPOSE http://www.aspose.com/categories/ssrs-rendering-extensions/default.aspx
44. And there is more? Draw data from anything .NET managed data provider, OLE DB provider, or ODBC data source MSSQL 7.0+, Oracle, Access OLAP, Active Directory Integrated security Server based reports – a single repository of reports and single management point
45. Summary History of reporting Architecture Report Life Cycle Capabilities Hands on lab
47. Authentication (Who are you?) the process of accepting credentials from a user and validating those credentials against a designated authority Authorization (Do you have permission to be here?) the process of determining whether the proven identity is allowed to access a specific resource. Glossary
48. IPrincipal Represents a user GenericPrincipal WindowsPrincipal Every thread has a principal (Thread.CurrentPrincipal) IIdentity Represents information about the user GenericIdentity WindowsIdentity Glossary
49. Windows Authentication capabilities of IIS Active Directory, Kerberos, NTLM Forms (most common) HTML form logon credentials ASP.NET issues a cookie that contains the credentials or a key Authentication in ASP.NET
50. You can configure the type of authentication to use in the web.config file <configuration> <system.web> <authentication mode=“[Forms|Windows|Passport|None]" /> </system.web> </configuration> Web.config
51. Using the built in SQL Membership and Role Providers Creating a Login Form Securing Pages Forms Authentication
54. User Profile ASP.NET has built in support for profiles. It can be configured via Web.Config <system.web> <profiles> <properties> <add name=“MyProperty” type=“string” /> </properties> </profiles> </system.web> It is read by .NET and a strongly typed class is created You can access it by going Profile.MyProperty
62. Thank You! Gateway Court Suite 10 81 - 91 Military Road Neutral Bay, Sydney NSW 2089 AUSTRALIA ABN: 21 069 371 900 Phone: + 61 2 9953 3000 Fax: + 61 2 9953 3105 info@ssw.com.auwww.ssw.com.au
Editor's Notes
Peter Gfader shows asp.net AJAX
Java current version 1.6 Update 171.7 released next year 2010Dynamic languages Parallel computingMaybe closures
Show HistoryManager solution on $UTS-ShortCourse
When history is enabled, it is implemented differently for each browser. For Internet Explorer, an iframe element is rendered to the browser, which can cause an additional request to the server. The model is therefore an opt-in approach. The following example shows how to enable history declaratively through the ScriptManager control.
Reb: Merged into previous slide
Configuration File EncryptionProfiles
These FREE Web App Toolkits help you complete common web development tasks and quickly add new features to your apps. Whether it’s Bing Maps integration or adding social capabilities to your site, there’s a toolkit for you. Download and install them today.