selectpdf c# example : Add url pdf software control dll windows web page azure web forms WATUsageGuide40-part884

399
Configuring RoboServer
This section describes how to configure RoboServer through the RoboServer Settings application.
RoboServer Settings may be started as a separate application, e.g. from the Start menu on Windows, or
as a dialog opened from Control Center.
RoboServer Settings Main Window
Using this application, you can configure the following (covered in individual subsections):
• Management Console: Configuration of the embedded Management Console.
• Security: Security settings such as authentication and permissions.
• Certificates: The use of certificates.
• Project: The location of the default RoboServer project.
• JMX Server: The JMX server.
After changing any of the settings, you should click “OK” to store the new settings, and then restart any
RoboServers that you have running, to make the changes take effect.
If you need to change the maximum amount of RAM that RoboServer can use, consult the section Changing
the RAM Allocation.
Configuring the Embedded Management
Console
RoboServer contains an embedded web server which runs the Management Console. The web server is part
of RoboServer, but is activated only when RoboServer is started with the -MC option enabled. By default,
the web server will listen on port 50080, and thus the Management Console web interface is available on:
http://host:50080/
Add url pdf - insert, remove PDF links in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Free C# example code is offered for users to edit PDF document hyperlink (url), like inserting and deleting
pdf links; add a link to a pdf in acrobat
Add url pdf - VB.NET PDF url edit library: insert, remove PDF links in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Help to Insert a Hyperlink to Specified PDF Document Page
pdf link to email; adding hyperlinks to pdf files
Configuring RoboServer
400
Protocols and Ports
The web server can be configured to be accessible through HTTP and HTTPS on separate ports. If a
protocol is enabled, a port number for it must be chosen; the defaults are port 50080 (HTTP) and port
50443 (HTTPS).
In order to enable HTTPS a server certificate in JKS format must be stored in a file called
tomcat.keystore in the Certificates/Web folder in the installation. If a certificate password
other than the default one (‘changeit’) must be used, it can be entered in the Certificate Password field.
Enabling Administration Security
The Management Console can be accessed not only from the same computer (localhost), but also from
others. One of the points of having a Management Console is that it coordinates execution of robots, and
thus it typically must be accessible to many clients.
To mitigate the potential security risk of having access to the Management Console from other machines,
you can enable an administrator password. Select the Use Admin Password option and enter the desired
administrator user name and password. You must use these credentials both when you publish a robot to
the Management Console from Design Studio and when you access the web interface from a browser.
You can also restrict who is allowed to upload JDBC driver to the embedded Management Console (see
more about uploading JDBC drivers here). Possible choices are 'Not Allowed' where no one can upload
JDBC drivers, 'Admin from localhost' which means that the admin user can upload drivers if he is accessing
the Management Console from the local machine, and finally, 'Admin from any host' which means that
the admin user can always upload JDBC drivers.
Security
On the Security tab of the RoboServer settings, you specify general security restrictions and whether
authentication is required for accessing the RoboServer. Audit logging can also be enabled here.
Restrictions
You can specify whether the RoboServer is allowed file system and command line access. By default,
this is not allowed. If you enable it, however, robots running on RoboServer are allowed to access the file
system and, using the Execute Command Line step, execute arbitrary commands on the machine running
RoboServer. WARNING: enabling file system and command line access IS a security risk, and you should
carefully consider if it is necessary. If you do enable it, you should make sure the machine is not accessible
from outside the local network, and/or you should require user authentication. Having a RoboServer with
file system and command line access running on a machine accessible from the Internet and not requiring
authentication, basically opens up the machine to the outside, and anyone can, for instance, modify the
file system in a way corresponding with the access rights of the user running RoboServer.
You can also disable accepting JDBC drivers from the Management Console. When activating
RoboServers, the Management Console also sends settings to them. By default, this includes any JDBC
drivers that have been uploaded to the Management Console. If a malicious user has gained administrator
access to the Management Console, he could upload equally malicious jar files which would then be sent
to the RoboServers. If the admin Management Console user is only allowed to upload JDBC drivers from
the localhost, the above would only happen if the attacker is in fact sitting in front of the machine running
the Management Console, or has gained access to, for instance, a VPN (in which case you probably have
bigger problems), so in general it should not be necessary to disable accepting JDBC drivers. If you do,
C#: How to Open a File from a URL (HTTP, FTP) in HTML5 Viewer
License and Price. File Formats. PDF. Word. Excel. PowerPoint. Tiff. DNN (Dotnetnuke). Quick to Start. Add a Viewer Control on Open a File from a URL (HTTP, FTP).
adding a link to a pdf in preview; pdf email link
C#: How to Add HTML5 Document Viewer Control to Your Web Page
addTab(_tabRedact); //add Tab "Sample new UserCommand("pdf"); _userCmdDemoPdf.addCSS( new customStyle({ background: "url('RasterEdge_Resource_Files/images
adding a link to a pdf; adding hyperlinks to pdf documents
Configuring RoboServer
401
however, you can make JDBC drivers available to the RoboServer by manually putting them into the
lib/jdbc directory of the installation folder as described here.
Requiring Authentication
If you want to protect your RoboServer against unauthorized access you can turn on authentication. This
has effect on all RoboServers you run from your Kapow Katalyst installation, that is both a RoboServer
you start as a service and a RoboServer you start from a command-line.
To turn on authentication you put a check mark the checkbox Require RoboServer Authentication. In
order to be able to run robots on a RoboServer with authentication turned on, you have to add some users.
You do this by clicking on the add button. This will insert a new unnamed user. You can then fill out the
information about the user including the username which will then be shown in the list of users.
A user is configured using the following properties:
Table 146. Users Properties
Property
Description
Username
This is the username used by the user when accessing the RoboServer.
Password
This is the password used by the user when accessing the RoboServer.
Comments
Here you can write a comment about the user.
Start Robot
This enables the user to start robots on the RoboServer.
Stop Robot
This enables the user to stop robots on the RoboServer.
View Execution
This enables the user to connect to the RoboServer from the
ControlCenter application.
View / Edit Settings
This enables the user to view and edit the configuration of the Kapow
Katalyst from the ControlCenter application.
Shutdown RoboServer
This enables the user to shutdown the RoboServer from the
ControlCenter application.
In order to run robots on a RoboServer that has been configured with authorization, the caller must provide
proper credentials. In the Management Console, this is done in the settings. When running a robot via the
Java API, credentials are provided as explained in Execution Parameters. For a clipping robot, credentials
may be provided with a RoboServer credentials Provider.
Configuring Audit Logging
To automatically have every HTTP and FTP request made by RoboServer logged, check the "Log
HTTP/FTP Traffic" option. This will log HTTP and FTP requests using the Log4J logger specified by
log4j.logger.kapow.auditlog. Log4J is configured by the log4j.properties file in the
Configuration folder in the application data folder.
The audit log will log all requests to both web pages and all of its resources. Here's an excerpt from the
log produced by loading the front page of Google:
02-29 13:51:21  INFO kapow.auditlog - google google.com http://google.com/ 301 0
02-29 13:51:21  INFO kapow.auditlog - google www.google.com http://www.google.com/ 200 81688
02-29 13:51:22  INFO kapow.auditlog - google www.google.com http://www.google.com/extern_js/f/CgJkYRICZGsrMEUjtw.js 200 328960
02-29 13:51:22  INFO kapow.auditlog - google www.google.com http://www.google.com/extern_chrome/d9924a47b8c72e1a.js 200 43796
C# PDF Library SDK to view, edit, convert, process PDF file for C#
editing PDF document hyperlink (url) and quick navigation link in PDF bookmark. C#.NET: Edit PDF Metadata. PDF SDK for .NET allows you to read, add, edit, update
add link to pdf file; check links in pdf
C# Image: How to Download Image from URL in C# Project with .NET
Add this imaging library to your C#.NET project jpeg / jpg, or bmp image from a URL to your provide powerful & profession imaging controls, PDF document, tiff
add hyperlinks to pdf; add hyperlink pdf
Configuring RoboServer
402
02-29 13:51:23  INFO kapow.auditlog - google ssl.gstatic.com http://ssl.gstatic.com/gb/js/sem_6501b4b3093bbedb61d2e.js 200 31642
The log contains the following information:
• Timestamp
• Log level (INFO)
• Logger (kapow.auditlog)
• Robot name
• Hostname
• Request URL
• HTTP/FTP response code
• Number of bytes loaded from the response body
Certificates
A key problem in establishing secure communications is to make sure that you're communicating with the
right party. It is not sufficient just to request identity information from the other party - there must also
be a way to verify this information before you can trust it. Certificates provide a solution to this, as they
embody both a party's identity information (including that party's hostname and public key) and a signature
from a trusted third party who vouches for the correctness of the identity information. A certificate should
be trusted only:
• If the hostname stated within the certificate matches the hostname of the site that it comes from
(otherwise it is a record of someone else's identity, which amounts to using false credentials).
• And if the certificate is signed by a third party that you trust.
• (Additionally, the certificate expiration date and the like should be checked, but we will not be concerned
with these details here.)
We will not go into the technical details of the signing process, other than mentioning that it is based on
public/private key cryptography. A signature for a certificate is the (fairly compact) result of a complex
calculation that involves both the contents of the certificate and the signer's private key, and which cannot
be reproduced without that same private key. The signature can be verified by doing another calculation
that involves the contents of the certificate, the signature and the signer's public key. This calculation will
tell whether the certificate matches the signature and thus is genuine. Note that the public key only enables
you to verify a signature, not generate one. Thus the public key will not enable anyone to fake a certificate.
The signing party must never give the private key to anyone, but will distribute the public key as widely
as possible. However, one issue still remains before you can trust a signature: You must be sure that you
have a genuine copy of the signing party's public key. Public keys for well-known signing authorities like
VeriSign are distributed with every browser and Java Runtime, and your trust in the signature (and thus
the certificate) is in fact based on your trust in the way the browser or Java Runtime was installed.
It is possible to create your own signing authority by creating a public/private key pair and distributing the
public key. This is done by embedding the public key in a certificate (a so-called self-signed certificate).
Of course a party receiving such a certificate will not trust it based on its signature, but because he trusts
you and the way that the certificate was communicated to him.
C# PDF insert image Library: insert images into PDF in C#.net, ASP
C#.NET PDF SDK - Add Image to PDF Page in C#.NET. How to Insert & Add Image, Picture or Logo on PDF Page Using C#.NET. Add Image to PDF Page Using C#.NET.
add link to pdf; adding an email link to a pdf
C# HTML5 PDF Viewer SDK to view PDF document online in C#.NET
Insert Image to PDF. Image: Remove Image from PDF Page. Cut Image in Page. Link: Edit URL. Bookmark: Edit Images. Redact Pages. Annotation & Drawing. Add Sticky Note
add links to pdf in preview; clickable pdf links
Configuring RoboServer
403
In order to make this scheme more flexible in actual implementation, it is possible to delegate the authority
to sign. That is, the signature on a certificate may not actually be from a third party that you trust, but
rather from yet another party who can display a certificate that you will trust. This may be extended to
any number of levels, representing a chain of trust. To make verification practical, the signed certificate
contains copies of all the certificates associated with the chain of trust (the last one being a self-signed
root certificate). At least one of the certificates in this chain should be previously trusted by you.
Certificates are used in four different ways on RoboServer, corresponding to the four properties on the
"Certificates" tab. Two of these have to do with how robots access web servers as part of their execution:
Verify HTTPS Certificates:
A robot may need to verify the identity of a web server that
it accesses (via HTTPS). Such a verification is routinely (and
invisibly) done by ordinary browsers in order to detect phishing
attacks. However, the verification often is not necessary when
robots collect information, because the robots only access those
well-known web sites that they have been written for. Thus the
verification it is not enabled by default.
If enabled, verification is done in the same way a browser does it:
The web server's certificate is checked based on an installed set of
trusted HTTPS certificates similar to those you can configure in a
browser.
HTTPS Client Certificates:
This is almost the same as described above, but in the opposite
direction. A robot may need to access a web server which wants to
verify the identity of the client (robot) that accesses it. Presumably
the web server contains confidential or commercial data that should
be passed on only to clients with a proven identity. This identity is
represented by a HTTPS client certificate.
Two other properties have to do with authentication in the communication between RoboServer and API
clients that want robots to be executed on RoboServer. These properties apply only when clients connect
to RoboServer via the secure socket based RQL protocol. The main purpose of the secure protocol is to
encrypt communication, but with a little configuration it will also provide authentication, i.e., identity
verification:
Verify API Client Certificates:
RoboServer is able to verify the identity of any client that connects
to it in order to execute robots. This verification is disabled by
default.
If enabled, the mechanics of verification is the same as for
HTTPS certificates even though the purpose is quite different. The
connecting client's certificate is checked based on an installed set
of trusted API client certificates.
API Server Certificate:
RoboServer also has a server certificate that it will present to
connecting clients. This certificate has a dual purpose: It makes the
encryption side of SSL work (for this reason RoboServer comes
with a default self-signed certificate), and it identifies this particular
RoboServer to the clients.
The default API server certificate is the same for all RoboServers
and thus is not any good for identification. If your clients need to
verify the identity of the RoboServer they connect to, as described
in SSL, you must create and install a unique API Server Certificate
for each RoboServer.
VB.NET PDF- View PDF Online with VB.NET HTML5 PDF Viewer
to PDF. Image: Remove Image from PDF Page. Image Link: Edit URL. Bookmark: Edit Bookmark. Metadata: Edit, Delete Redact Pages. Annotation & Drawing. Add Sticky Note
add email link to pdf; add hyperlink pdf document
VB.NET Image: VB Code to Download and Save Image from Web URL
Apart from image downloading from web URL, RasterEdge .NET Imaging SDK still dedicated to provide powerful & profession imaging controls, PDF document, image
active links in pdf; accessible links in pdf
Configuring RoboServer
404
HTTPS Certificates
When a robot accesses a web site over HTTPS, it will verify the site's certificate (provided that the "Verify
HTTPS Certificates" checkbox is checked). Verification is done based two sets of trusted certificates: The
set of root certificates and an additional set of server certificates.
The root certificates are installed with Kapow Katalyst just as root certificates are installed with your
browser. They are found in the Certificates/Root folder in the application data folder.
Some HTTPS sites may use certificate authorities that are not included by default. In this case, you need
to install the appropriate certificates for Kapow Katalyst to load from these sites. Most often, these would
be installed in the Certificates/Server folder in the application data folder.
To be precise, it does not matter - for the purpose of handling HTTPS sites - whether you add certificates to
the set of root certificates or to the set of server certificates. However, please note that the root certificates
have a broader scope, as they are also used when checking API client certificates.
To install a certificate, you need to obtain the certificate as a PKCS#7 certificate chain, as a Netscape
certificate chain, or as a DER-encoded certificate. You install the certificate by copying it to either of the
two folders mentioned above. The name of the file containing the certificate does not matter.
The following example explains how to install a server certificate for the website https://www.foo.com.
The example is based on Internet Explorer.
• Open https://www.foo.com in Internet Explorer.
• Select “Properties” under the “File” menu, and then select “Certificates”. This will open a Certificate
dialog.
• Click “Install Certificate”.
• Click “Next” twice, “Finish” once, and exit the certificate dialog. Now you have installed the certificate
in your browser. The next step is to export it to a file.
• Click “Internet Options...” in the Tools menu. This opens the “Internet Options” dialog.
• Go to the “Content” tab and click on the “Certificates” button.
• Now you need to locate the installed certificate. It is most likely in the tab called “Other People”.
• Select the certificate and press “Export”.
• Press “Next” twice.
• Save the certificate in the Certificates/Server folder in the application data folder as foo.cer.
• Restart all your running RoboServers.
Note
You must install the certificates on all installations that need to load from the particular HTTPS
sites.
HTTPS Client Certificates
When a robot accesses a HTTPS site, it may need to provide its own certificate to the web server. This is
set up in the robot's Default Options [../ref/robomaker/reference/stepaction/support/BrowserEngine.html]
Configuring RoboServer
405
or in the step-specific Options. One way to provide the certificate is to reference one of those that have
been configured into the Kapow Katalyst installation.
To add a new client certificate, in the Certificates tab of RoboServer Settings click the  icon below the list
of HTTPS client certificates. You will be prompted to select a certificate file which must be in PKCS12
format, and you must enter the password used to encrypt the file. When the certificate is first entered into
the list, it will be given a unique ID, which is later used in the robot to select the certificate. You can change
the ID by clicking the  icon. Remember that the certificates must be configured into all Kapow Katalyst
installations that need to run the robot.
API Client Certificates
When API clients connect to RoboServer over SSL, RoboServer will verify the certificates presented
to it (provided that the "Verify API Client Certificates" checkbox is checked). Verification means that
RoboServer will reject connections from clients that fail verification, and is done based on two sets of
trusted certificates: The set of root certificates and an additional set of API client certificates.
The root certificates are installed with Kapow Katalyst just as root certificates are installed with your
browser. They are found in the Certificates/Root folder in the application data folder. These are the
same root certificates which are used for checking HTTPS certificates; however, root certificates probably
will play a much smaller role when verifying API clients.
This is because in most cases, you will create your own self-signed API client certificates rather than
use (expensive) certificates issued by official signing authorities. You should install your API client
certificates in the Certificates/API/TrustedClients folder in the application data folder so
that RoboServer will recognize them.
Technically speaking, it does not matter - for the purpose of verifying connecting API clients - whether
you add API client certificates to the set of root certificates or to the set of API client certificates. However
the guidelines given above will help you avoid problems caused by the fact that the root certificates are
also (even mainly) used when checking HTTPS certificates.
You can generate a self-signed certificate for your API client with the Java keytool command as follows:
keytool -genkey -keystore client.p12 -alias client -keyalg RSA -storetype "PKCS12"
You will be prompted for the following information: Name (domain), name of Organizational Unit,
Organization, City, State, Country and password. Do not forget the password, there is no way to retrieve
it if lost. This call of keytool will put the certificate into the keystore client.p12. You then must
extract it into a separate file:
keytool -export -keystore client.p12 -alias client -storetype "PKCS12" -file client.pub.cer 
You will be prompted for the password used when the certificate was generated. The output file
client.pub.cer is what should be copied into the Certificates/API/TrustedClients
folder in the application data folder.
API Server Certificate
For technical reasons, RoboServer must have a server certificate that it can present to API clients when they
connect to it using SSL. During installation, a default self-signed certificate is installed. This certificate is
no good for identification purposes since it is the same for all RoboServers, and should be replaced if the
API clients need to verify the identity of the RoboServer.
If you want to use a certificate issued by a signing authority like VeriSign, you can import it by clicking
the "Change" button in the Certificates tab of RoboServer Settings. This will open a file selection dialog
Configuring RoboServer
406
and once the certificate is located, you will be prompted for the password. If the password is correct
the certificate will be imported, and you should see the certificate's Issued To, Issued By, and Expires
properties.
You can generate a new self-signed certificate for RoboServer by using the following Java keytool
command:
keytool -genkey -keystore server.p12 -alias server -keyalg RSA -storetype "PKCS12"
You will be prompted for the following information: Name (domain), name of Organizational Unit,
Organization, City, State, Country and password. Do not forget the password, there is no way to retrieve
it if lost. The certificate will be saved in the keystore file server.p12, which you can then import as
described.
Setting the Default RoboServer Project
You can set the location of the default RoboServer project folder in the 'Project' tab of RoboServer Settings.
By default, the folder will be set to the default robot project created in the installation folder by the
installation process. See the Design Studio User’s Guide for more information on robot projects.
The RoboServer default project is used only by the API. When executing a robot from the API, any
references it has to types, snippets or other resources are resolved by looking in the default project.
Configuring the JMX Server
The embedded JMX server can be used to monitor the running RoboServer through tools like JConsole. It
is enabled by providing an argument on the RoboServer command line (see the RoboServer User’s Guide
for further information.)
Hiding Sensitive Robot Input
The Show Inputs option controls whether robot input parameters are shown in the management interface.
This makes it possible to hide security sensitive information like passwords.
JMX Server Access
By default the JMX server can be accessed by all clients with access to the correct port on the server. By
selecting the Use Password option the chosen user name and password must be provided when connecting.
Heartbeat Notifications
If an interval (in seconds) greater than 0 is specified the JMX server sends out a heartbeat notification with
the given interval as long as the RoboServer is running and responding to queries.
Changing the RAM Allocation
As installed, each Kapow Katalyst application is configured with a maximum amount of RAM that it may
use. This amount usually is plenty for ordinary work, but if you run many robots in parallel on RoboServer,
or if some robots use much RAM, it may be necessary to increase the allocation.
You can change the allocation for any of the applications by editing its .conf file, found in the bin
subfolder of the installation. For RoboServer, the file to edit is named:
Configuring RoboServer
407
bin/RoboServer.conf
You need add a line with:
wrapper.java.maxmemory=1024
For example, in order to permit RoboServer to use up to 4GB of RAM, add this line:
wrapper.java.maxmemory=4096
(Note that an allocation this high is possible only on the 64-bit version of Kapow Katalyst).
Also note that the .conf file can be edited only by the user who installed Kapow Katalyst (e.g., typically
the administrator on Windows).
If necessary, the maximum RAM allocation for other Kapow Katalyst applications can be changed in the
same way.
408
Control Center User's Guide
Control Center is a legacy application for managing RoboServers. Most monitoring and administration of
RoboServers and robots are today done using the Management Console. For old setups that do not take
advantage of the Management Console, Control Center can be used. Control Center also allows monitoring
of robots runs that have been initiated by communication from a Java or .NET client directly to RoboServer
and provides progress information on the robot runs.
Organization
The guide is divided into sections covering:
• Basic concepts.
• The user interface.
• How to use Control Center to manage RoboServers.
• How to use Control Center to manage robots.
• Miscellaneous other Control Center features.
Control Center Basics
This section describes the basic concepts used in the Control Center.
The Control Center has the following main tasks:
• Monitoring and shutting down RoboServers.
• Monitoring and stopping robots on RoboServers.
• Various administrative tasks.
In order for the Control Center to manage a RoboServer, you must register the RoboServer with the
Control Center. Registering a RoboServer simply means adding it to the list of RoboServers that can be
managed by the Control Center.
Control Center User Interface
This section gets you started with using the Control Center by introducing you to the user interface of
the application.
The Main Window
The main window of the Control Center is shown below:
Documents you may be interested
Documents you may be interested