asp.net mvc pdf viewer free : Adjust size of pdf SDK Library API .net wpf web page sharepoint Net+SAML2+Service+Provider+Framework1-part1859

11 
impossible to tamper with. 
5. Clicking ͞Logout͟ will terminate the user͛s session and initiate the logout conversation between the 
service provider(s) and the identity provider. 
To illustrate the dependence on correctly configured and always valid and not revoked certificates try to 
change the certificate of the service provider or the identity provider after exchanging metadata. This will 
cause messages between the federation partners to be rejected due to invalid signatures. 
Adjust size of pdf - Compress reduce PDF size in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
C# Code & .NET API to Compress & Decompress PDF Document
change font size pdf text box; reduce pdf file size
Adjust size of pdf - VB.NET PDF File Compress Library: Compress reduce PDF size in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
VB.NET PDF Document Compression and Decompression Control SDK
change pdf page size; best way to compress pdf
12 
5.4 
Demonstrating IdP Discovery using Common Domain Cookie 
This section illustrates how to perform IdP Discovery as describe in the SAML Identity Provider Discovery Profile 
by enabling the Common Domain Cookie approach in the Federation. Note that IdP Discovery is only relevant 
when multiple IdPs are present in the same federation. 
The setup explained in this section corresponds to the configuration illustrated in the first figure in chapter 11, 
which consists of two Service Providers and two Identity Providers. It is assumed that the certificates are 
already installed as explained in section 5.1. 
5.4.1 Preparation 
1. Create the directory ͟C:\inetpub\cdctest͟. 
2. Copy the ͞dk.nita.saml20\WebsiteDemo͟ and 
͞dk.nita.saml20\IdentityProviderDemo͟ directories to the ͞C:\inetpub\cdctest͟ 
directory. 
3. Rename the ͞WebsiteDemo͟ folder to ͞sp1͟ and the ͞IdentityProviderDemo͟ folder to 
͞idp͟. 
4. Make a copy of the ͞sp1͟ folder and name the new copy ͞sp2͟. 
5. Open the IIS Manager and add three new Sites
a. One named demosp1 that points to Service Provider 1, the sp1 directory. 
b. One named demosp2 that points to Service Provider 2, the sp2 directory. 
c. And finally one named demoidp pointing to the Identity Provider, the idp directory. 
6. In the IIS Manager edit the bindings for the three sites: 
a. For Service Provider 1: 
Add the entries:  
demosp1.commondomain.local 
demosp1.local   
b. For Service Provider 2: 
Add the entries:  
demosp2.commondomain.local  
demosp2.local 
c. Identity Provider: 
Add the entry:  
commondomain.local  
(Note that the Identity Provider must be located on the domain corresponding to the common domain. 
This is not a requirement for Identity Providers in general, but is the only way to make it work with the 
Demo IdP. 
7. Add the following entries to the hosts file (C:\Windows\System32\drivers\etc\hosts): 
127.0.0.1 commondomain.local 
127.0.0.1 demosp1.commondomain.local 
127.0.0.1 demosp2.commondomain.local 
127.0.0.1 demosp1.local 
127.0.0.1 demosp2.local 
8. Modify the Web.config of the identity provider, the idp application. One app setting must be changed: 
a. The <
IDPDataDirectory
> element holds the path to the directory containing metadata of 
service providers. Make sure to specify a directory that is accessible by the web server 
VB.NET Image: How to Draw Annotation on Doc Images with Image SDK
multi-page TIFF, Microsoft Office Word and PDF file that, you are also able to adjust various image control the annotation shapes, the outline size (width and
reduce pdf file size; adjust file size of pdf
C# Image: Zoom Image and Document Page in C#.NET Web Viewer
jpeg), gif, bmp (bitmap), tiff / multi-page tiff, PDF, etc. APIs for Visual C# .NET developers to adjust the image & document page viewing size with this
reader shrink pdf; change font size in pdf text box
13 
(typically the Network Service account). 
9. Add a new file, cdcreader.ashx, to each of the two Service Providers, sp1 and sp2 
a. Put the following into each cdcreader.ashx file:  
<%@ WebHandler Class="dk.nita.saml20.protocol.Saml20CDCReader" %>
10. Modify the Web.config files of the two Service Providers, the sp1 and sp2 applications: 
a. Two elements in the <SAML20Federation> section must be changed: 
i. The id attribute of the <ServiceProvider> element must be changed to something 
unique for each service provider, eg. http://sp1.example.net
and 
http://sp2.example.net
ii. The server attribute of the <ServiceProvider> element should be changed to 
http://demospX.local
– where X is either 1 or 2 depending on the Service Provider. 
iii. The <IDPEndPoints> element holds the path to the directory containing metadata 
of Identity Providers. Make sure to specify a directory that is accessible by the web 
server (typically the Network Service account). 
iv. In order to demonstrate the Common Domain Cookie, add a dummy Identity Provider 
like so: 
<IDPEndPoints metadata="C:\inetpub\cdctest\sp1\metadata\"> 
<add id="DemoIdPEntityId"> 
<CertificateValidation> 
<add 
type="dk.nita.saml20.Specification.SelfIssuedCertificateSpecification, 
dk.nita.saml20"/> 
</CertificateValidation> 
</add> 
<add id="dummy"></add> 
</IDPEndPoints> 
You need to change the ͞DemoIdPEntityId͟ to the actual entity id of your demo 
IdP. 
You can see the correct entity id in the IdP͛s control panel. 
b. Change the six places where it says ͞/demo/…͟ to ust ͞/͟ 
c. Reading of the Common Domain Cookie can be enabled by adding the <CommonDomain> 
element to the <SAML20Federation> element: 
<CommonDomain enabled="true" 
localReaderEndpoint="http://demospX
.commondomain.local/cdcr
eader.ashx" />  (where X
is either 1 or 2) 
d. Change the <Federation> section to included to <Audience> tags containing the id͛s of the two 
service providers (the id attributes from the <ServiceProvider> elements mentioned above.) 
11. The next step is to exchange metadata between the Identity and Service Providers: 
a. Go to the Service Provider 1͛s website (http://demosp1.local/default.aspx
), and download the 
metadata to a temporary location of your choice. 
b. Repeat the previous step for Service Provider 2. 
c. Go to the Identity Provider͛s control panel (http://demoidp/Control.aspx
) and configure the 
running IdP: 
VB.NET Image: VB.NET Code to Create Watermark on Images in .NET
font type "Times New Roman", size "16", and style "Bold"), and then adjust brush color provide powerful & profession imaging controls, PDF document, tiff
change font size pdf document; pdf edit text size
C# PowerPoint: How to Set PowerPoint Rendering Parameters in C#
this SDK to render PowerPoint (2007 or above) slide into PDF document or Generally, you are allowed to set image resolution, image size, batch conversion and
best compression pdf; reader pdf reduce file size
14 
i. Chose the certificate to identify this identity provider. Chose the IdentityProvider 
certificate (CN=IdentityProvider, O=NITA, C=DK) in LocalMachine and My store. 
ii. Enter the URL for this identity provider. Normally the default will be OK, but avoid 
localhost or 127.0.0.1 
iii. Download the metadata and place it into the directory (specified in 9.a.iii – 
͞C:\inetpub\cdctest\sp1\metadata\”. 
d. Add the two Service Providers by uploading their metadata, which was download to the 
temporary locations used in steps 10.a and 10.b. 
5.4.2 Demonstration 
1. Access Service Provider 1͛s website (http://demosp1.local/Default.aspx
) and click ͞Go to My page͟ 
2. Select which Identity Provider to authenticate the user from the list of Identity Providers. Notice the 
dummy Identity Provider which cannot be selected, since it is not needed in order to demonstrate the 
Common Domain Cookie proof of concept. 
3. Login as the user ͞Lene1͟ and password ͞Test1234͟. 
4. Access Service Provider 2͛s website (http://demosp2.local/Default.aspx
) and click ͞Go to My page͟ 
5. Notice that the user is not asked to login again, since he has already been authenticated. 
6. Clicking ͞Logout͟ will terminate the user͛s session. 
5.5 
Demonstration of IDP selection when multiple IDP’s are available 
In case more than one IDP has been configured in the IDPEndPoints collection, and no Common Domain Cookie 
has yet been set, it is possible to select authorization IDP in 3 ways: 
1. By setting a default IDP in the SAML20Federation configuration section (see section 5.5.1) 
2. In the SAML20Federation configuration section, by specifying a URL on the website that lets the user 
select IDP (see section 5.5.2) 
3. By implementing a .NET event handler that returns the IDPEndpoint to use (see section 5.5.3) 
The list above is ordered, that is, in case a default is configured (method no. 1), use of the methods no. 2 and 3 
are ignored by OIOSAML.NET. In the samples below it is therefore important to remove changes done to the 
configuration file in the previous example. 
5.5.1 Using the “default” attribute 
1. 
In the example above, modify the Web.config by adding a default=”true” attribute to the 
<add…> element for the Idp: <add id="http://commondomain.local/" 
default="true">
2. Restart the browser to make sure the common domain cookie is removed 
C# PDF: Use C# APIs to Control Fully on PDF Rendering Process
PDF document PDFDocument doc = new PDFDocument(@"c:\sample.pdf"); // compute zoom new Rectangle(0, 0, originalWidth, originalHeight), size); // adjust with a
change page size of pdf document; change font size in fillable pdf form
VB.NET Excel: VB Methods to Set and Customize Excel Rendering
on the fixed image size ration that the size is limited by Adjust Image Scaling Factor. supports converting Excel to other document files, like PDF with online
pdf font size change; pdf file compression
15 
3. Access Service Provider 1͛s website (http://demosp1.local/Default.aspx
) and click ͞Go to My page͟ 
4. Notice that the user is not prompted, which IDP to use, since he is immediately redirected to the 
default IDP. 
5.5.2 Using the “idpSelectionUrl” attribute 
With this method, the developer can specify a page that the user should be redirected to, in case multiple IDP͛s 
are available: 
1. 
In case you modified the Web.config as explained in 5.5.1, remove the default=”true” 
2. 
In the <IDPEndPoints> element, add the idpSelectionUrl and value, so the element looks like this: 
<IDPEndPoints metadata="C:\inetpub\cdctest\sp1\metadata\" 
idpSelectionUrl="/IDPSelectionDemo.aspx">
3. Restart the browser to make sure the common domain cookie is removed 
4. Access Service Provider 1͛s website (http://demosp1.local/Default.aspx
) and click ͞Go to My page͟ 
5. Notice that the browser opens a web-page from the WebsiteDemo project (IDPSelectionDemo.aspx), 
and not the default IDP selection list from the OIOSAML.NET framework. IDPSelectionDemo.aspx is just 
a sample of, how a page could look like. The styling and contents is completely defined by the 
web-developer. The only thing to remember is, that the link, that the user clicks, points to the URL 
returned by the GetIDPLoginUrl() method on the 
dk.nita.saml20.config.IDPEndPoint class. See IDPSelectionDemo.aspx.cs for an example. 
5.5.3 Using the IDPSelectionEvent 
The third method for selecting an IDP end point is done programmatically by using a .NET event: 
1. 
In case you modified the Web.config as explained in 5.5.1, remove the attribute default=”true” 
2. 
In case you modified the Web.config as explained in 5.5.2, remove the attribute 
idpSelectionUrl="/IDPSelectionDemo.aspx"
3. See an example of a IDPSelectionEvent handler in Global.asax.cs, named 
_idpSelectionEventHandler. 
To use this handler add this line to 
Application_Start
(in 
Global.asax.cs)
IDPSelectionUtil.IDPSelectionEvent += _idpSelectionEventHandler; 
4. Since we are professional developers, always remembering to clean up, dispose etc. in our code (!) , 
add this line to Application_End (in Global.asax.cs): 
IDPSelectionUtil.IDPSelectionEvent -= _idpSelectionEventHandler; 
5. Restart the browser to make sure the common domain cookie is removed 
6. Access Service Provider 1͛s website (http://demosp1.local/Default.aspx
) and click ͞Go to My page͟ 
7. Notice that the user is not prompted, which IDP to use, since he is immediately redirected to the IDP 
chosen by the event handler. 
C# PDF Convert: How to Convert Word, Excel, PowerPoint, Tiff
Support rendering image to a PDF document page, no change for image size. Able to adjust and customize image resolution to meet various C# PDF conversion
pdf file size limit; change font size pdf fillable form
C# Word: How to Draw Text, Line & Image in C#.NET Word Project
copy the sample codes below to adjust text properties such as image color, picture size, location of powerful & profession imaging controls, PDF document, image
pdf page size may not be reduced; apple compress pdf
16 
6 Using the framework  
To develop a new web site using the framework you may follow the procedure below for getting up and 
running.  This procedure serves only as a guide as your environment may differ from what is described below. 
Also described are the steps to work with real identity providers and how to set up more than one service 
provider. 
6.1 
Creating your own service provider web site 
1. Create a new web project in Visual Studio. 
2. In the solution, include the Saml2 project containing the framework (may be left out if you keep a 
compiled version of the framework for reference) 
3. Add a reference to the Saml2 project (or, if working with a compiled version, add a reference to the 
dk.nita.saml20 assembly, dk.nita.saml20.dll) 
4. Create three ASP.NET handlers (ashx files) each with the content as illustrated below: 
o login.ashx (Your choice of name, but note it down as you will reference it later) 
<%@ WebHandler Class="dk.nita.saml20.protocol.Saml20SignonHandler" %>
o logout.ashx 
(Your choice of name, but note it down as you will reference it later) 
<%@ WebHandler Class="dk.nita.saml20.protocol.Saml20LogoutHandler" %>
o metadata.ashx 
(Your choice of name, but note it down as you will reference it later) 
<%@ WebHandler Class="dk.nita.saml20.protocol.Saml20MetadataHandler" 
%>
5. Modify Web.config (add a web.config file if not already there): 
o In the configSections section, add two additional sections: 
<section name="Federation" 
type="dk.nita.saml20.config.ConfigurationReader, 
dk.nita.saml20" /> 
<section name="SAML20Federation" 
type="dk.nita.saml20.config.ConfigurationReader, 
dk.nita.saml20"/> 
o In the system.web section, add/change the authentication element: 
<authentication mode="Forms"
<forms cookieless="UseCookies"  
loginUrl="<YOUR LOGIN HANDLER AS NAMED ABOVE>"  
name="<YOUR COOKIE NAME>"  /> 
</authentication
C# Word: Set Rendering Options with C# Word Document Rendering
& raster and vector images, such as PDF, tiff, png rendering application still enables users to adjust and set developers can choose a target size or resolution
pdf file size; change font size in pdf form
VB.NET Image: Image Resizer Control SDK to Resize Picture & Photo
VB.NET Code for Adjusting Image Size. In order to resizer control add-on, can I adjust the sizes of powerful & profession imaging controls, PDF document, image
pdf page size; can a pdf file be compressed
17 
o To describe which parts of the application are protected by forms authentication, you must use 
the ASP.NET location tag (see the sample for an example of this).  The reason for this is that 
you need unauthenticated access to not only the login.ashx handler, but also the 
metadata.ashx handler. 
For fastest results, copy from the sample service provider, WebSiteDemo, the 
Federation 
section 
and modify to your application. Refer to the reference in section 10.1 for details on each element. 
Note that to configure this element for a real world application, you will need your own 
certificate configured correctly for access by the web server. 
Note that the AllowedAudiencesUris element must be set to match the Id of the service 
provider in the 
SAML20Federation
as described below 
For fastest results, copy from the sample service provider, WebSiteDemo, the 
SAML20Federation 
section and modify to your application. Refer to the reference in section 10.2 for details on each element. 
Note that the Id attribute must be unique and match the audience requirements of the  
Federation
section (see previous point) 
Note that for the signon service endpoint you do not have to set a redirect URL.  If you 
want the user to be able to directly access any part of your application, and 
authentication on the way if necessary, remove this redirectUrl attribute. 
Note the IdPEndPoints element which must point to a valid directory 
6. Download the metadata of your application from the endpoint specified in the SAML20Federation 
element as described above (e.g. https://hostname/MyApp/metadata.ashx). These metadata must be 
given to the identity provider(s) of your choice. 
7. Install the metadata of your identity provider(s) in the directory specified in the 
Saml20Federation
section 
8. That͛s it. Now try it out with the sample identity provider and finally integrate with a third party 
identity provider 
6.2 
Working with real third party Identity Providers 
9. 
Download the service provider metadata as exported by the metadata endpoint supported by the 
framework (see section 10.2.1) 
10. 
Send the metadata to the relevant identity provider(s) 
11. 
Get the corresponding metadata from the identity provider(s). These metadata must be stored in the 
designated directory as specified by the IDPEndpoints configuration element (see section 10.2.3). 
18 
6.3 
Setting up more than one service provider 
1. The simplest way is to just copy the sample service provider, WebsiteDemo, or to go ahead and build a 
custom web site and subsequently enable federation through this framework. 
2. No matter how this is done, setting up more than one service provider, you must be sure to set 
authentication cookie names to different values across machine and domain: 
a. Important note regarding cookies 
b. It is important to specify different names for the browser cookies used by each website 
if more than one of the service provider is installed on the same host.  
c. Cookie names are configured in web.config using the name attribute of the 
<forms> element, and the cookieName attribute of the <sessionState> 
element. Both configuration options are elaborated in the ASP.NET reference 
documentation. 
3. For each service provider added to the federation they must register their metadata with the identity 
provider 
Once more than one service provider is available, you should notice that the user will not be re-authenticated 
when logging in at the second service provider.  
19 
7 Components 
This chapter provides a description of each component in the distribution. 
7.1 
SAML 2.0 framework 
The SAML 2.0 framework is the main component of this distribution. Chapter 9 is a reference of the 
framework͛s configuration parameters, while chapter 11 is an API reference detailing the classes that are 
required for an application to use the framework. 
7.2 
Demonstration identity provider 
The demonstration identity provider is included so that it is not required for a development environment to 
have a fully configured identity provider to test out basic federation.  
The demonstration identity provider has the following features 
Accepts authentication requests using HTTP-REDIRECT. 
Issues authentication responses using HTTP-POST. 
Logout requests and responses using HTTP-REDIRECT. 
Issues and consumes metadata. 
Handles authentication and logout of user sessions across several service providers. 
Validates signatures. 
The demonstration identity provider uses the SAML 2.0 Framework and is primarily meant as a companion to 
the demonstration service provider in order to deliver an easily created environment in which to get 
acquainted with the framework. It should not be used as a permanent substitute for at real identity provider in 
a development environment. 
20 
The users, passwords and issued attributes can be set-up in the web.config of the DemoIdP as shown in the 
example below: 
<configSections
<section  name="demoIdp" 
type="IdentityProviderDemo.Logic.DemoIdPConfigurationSection"/> 
</configSections
<demoIdp
<users
<add userName="Lene" password ="Test1234" 
ppid="PPID-FDFFE8F1-D92C-4838-B46D-B3DD558E700E"
<attributes
<add name="urn:FirstName" value="Lene"/> 
<add name="urn:LastName" value="Hansen"/> 
<add name="urn:Age" value="32"/> 
<add name="urn:oid:0.9.2342.19200300.100.1.3"  value="lene@company.dk"/> 
<add name="urn:dk:company:attribute:Role"   value="Medarbejder"/> 
<add name="urn:dk:company:attribute:Role"   value="Udvikler"/> 
</attributes
</add
<add userName="Åge" password ="Test1234" 
ppid="PPID-7CDE9A20-8A40-429a-A390-FFAB7DF84DF3"
<attributes
<add name="urn:FirstName" value="Åge"/> 
<add name="urn:LastName" value="Børgesen"/> 
<add name="urn:Age" value="23"/> 
<add name="urn:oid:0.9.2342.19200300.100.1.3"  value="Åge@company.dk"/> 
<add name="urn:dk:company:attribute:Role"   value="Øverste Chef"/> 
</attributes
</add
</users
</demoIdp>
Documents you may be interested
Documents you may be interested