Since the release of Firefox Quantum, have you made the change to Firefox in your company? If that's the case, are you concerned about users making changes to the browser that might go against company policy, or pose security risks? Although the average user might not know the about:config feature exists, there will be some that do. Even though completely disabling about:config isn't really an option, you can always lock down certain settings within about:config, and then deploy that newly configured browser.
Application Development Guide for Samsung Smart TV 8 1. Introduction This section describes what Samsung Smart TV is, how it is configured and how it works. What is Samsung Smart TV? Samsung Smart TV is a web-based application running on an application engine installed in digital TVs connected to the Internet. Where can I find the settings and preferences in the browser? I've been all through the menu bars, haven't found them listed, have checked the search engines and Opera Help. I'm using Opera version 12.12 for Linux.
I'm going to walk you through the process of doing just that. I'll demonstrate on the Linux platform (using Ubuntu 17.10 and Firefox 59). The process is similar on both Windows and macOS, although the specifics on file locations will vary.
You will need to download the latest version of Firefox from Mozilla and uninstall the version of Firefox that was included either via the default operating system installation or from with the OS package manager. You will also need to use the terminal window. Download the latest version of Firefox into the ~/Downloads directory.
Once you have everything ready, let's get to work.
Unpacking the file
The first thing we must do is unpack the downloaded file. Open up your terminal and change into the ~/Downloads directory with the command cd ~/Downloads. Unpack the file with the command tar xvfj firefox-*.bz2. This will create a new folder called firefox-XX (where XX is the release number). Within that folder is the sub-folder, firefox. Let's move that out of the parent folder with the following commands:
You should now see a folder named firefox. Change into that folder with the command cd firefox.
We are now ready to configure.
Configuring Firefox
The first thing we must do is create a new file called mozilla.cfg. Issue the command nano mozilla.cfg. Within that file we're going to lock down the about:config preferences we don't want the users to be able to change. The first line of this file is always ignored, so we're going to simply add an empty comment, like so:
The next lines in the file will contain all of the configuration options. To lock a preference in about:config, a line will start with lockPref. Let's say, for example, we want to set the default homepage to the TechRepublic site. The configuration option for this would be:
To find out what other preferences you can set in this file, all you have to do is open up the about:config page. For example, you could lock down app.update.enabled (which would disable application updates) with this line:
You could also lock down the default browser check with this line:
Once you've added all of your configuration options, save and close that file.
Next issue the command (from within the current firefox directory) nano default/pref/autoconfig.js. Within that file, add the following contents:
Save and close that file.
Test your configurations![]()
Open Firefox with the command ./firefox. When the browser opens, you should be able to see your configurations in place. You can check to make sure they've been locked by opening the about:config page (enter about:config into the address bar and hit Enter). Search for one of the options you've configured and it should appear as locked (Figure A).
Figure A
Deploying the configured Firefox
Because this is Linux, the process is actually pretty easy. What we're going to do is move the firefox folder to /opt with the command sudo mv firefox /opt. Next we'll create a symbolic link to /usr/bin with the command ln -s /opt/firefox/firefox /usr/bin/firefox. At this point, a user can issue the command firefox from the command line to start up our newly configured (and locked down) version of Firefox. Once it starts, lock the icon to the desktop panel and you're good to go. Depending upon your Desktop Environment, you might have to manually create a desktop entry. To do that, open a terminal window and issue the command nano ~/.local/share/applications/firefox.desktop and add the following contents:
Save and close that file. The newly created launcher should appear on your desktop or your GNOME Launcher.
And that's all there is to deploying a version of Firefox that includes locked down options within about:config. If you're looking to keep your users from tampering with Firefox, this might be your best route until Firefox for Enterprise is released.
Open Source Weekly Newsletter
You don't want to miss our tips, tutorials, and commentary on the Linux OS and open source applications. Delivered Tuesdays
Sign up today Sign up today
Also See
The settings for specific versions of ODP.NET, can be configured in several ways for specific effects on precedence:
The application or web config file can be useful and sometimes essential in scenarios where more than one application on a computer use the same version of ODP.NET, but each application needs a different ODP.NET configuration. The Windows registry value settings for a given version of ODP.NET affect all the applications that use that version of ODP.NET. However, having ODP.NET configuration values in the application or web config file assure that these settings are applied only for that application, thus providing more granularities.
For example, if the application or
web.config file has a StatementCacheSize configuration setting of 100 , this application-specific setting forces the version of ODP.NET that is loaded by that application to use 100 for the StatementCacheSize and overrides any setting in the machine.config and in the registry. Note that for any setting that does not exist in a config file (machine.config or application/web config), the value in the registry for a loaded version of ODP.NET is used, as in previous releases.
Note that ODP.NET reads the
machine.config files from the version of the .NET Framework on which ODP.NET runs, not from the version of ODP.NET.
ODP.NET only reads the Windows Registry and the XML configuration file when it is loaded into memory, thus any configuration changes made after that are not read or used until the application is re-started.
Note:
ODP.NET managed and unmanaged driver .NET configuration file settings for native Entity Framework 6 applications have a different format than the traditional .NET configuration file settings. For more information on this format, consult the ODP.NET README.
Oracle Data Provider for .NET, Unmanaged Driver Configuration
The following sections explain how to configure ODP.NET, Unmanaged Driver.
Refer to 'Oracle Data Provider for .NET, Managed Driver Configuration' for information about how to configure ODP.NET, Managed Driver.
Supported Configuration Settings
ODP.NET, Unmanaged Driver supports the configuration of an attribute as follows:
Table 2-1 describes each configurable attribute that is supported by ODP.NET. In the table, the term Configuration Support is followed by the types of configuration support (Windows registry, XML file, and so on) that are available for that attribute.
The table describes valid values as well as the default for each attribute.
Note:
The default values shown are the values used for an attribute if the registry key does not exist or if it is not configured anywhere.
Table 2-1 Configuration Attributes
Windows Registry
Upon installation, ODP.NET creates entries for configuration and tracing within the Windows Registry. Configuration and tracing registry values apply across all ODP.NET applications running in that Oracle client installation. Individual ODP.NET applications can override some of these values by configuring them within the ODP.NET application itself (for example,
FetchSize ). Applications can also use the .NET configuration files to override some of the ODP.NET Windows Registry values.
The ODP.NET registry values are located under
HKEY_LOCAL_MACHINESoftwareOracleODP.NET version . There is one key for .NET Framework 3.5, and one key for .NET Framework 4 and later.
Note:
32-bit applications running on an x64-based version of Windows use the registry subkey, HKEY_LOCAL_MACHINESoftwareWOW6432node in place of HKEY_LOCAL_MACHINESoftware . If such applications use Oracle Data Provider for .NET (32-bit), then the ODP.NET registry values are located under HKEY_LOCAL_MACHINESOFTWAREWow6432NodeOracleODP.NETversion .
Configuration File Support
For customers who have numerous applications on a computer that depends on a single version of ODP.NET, the Windows Registry settings for a given version of ODP.NET may not necessarily be applicable for all applications that use that version of ODP.NET. To provide more granular control, ODP.NET Configuration File Support allows developers to specify ODP.NET configuration settings in an application config,
web.config , or a machine.config file.
If a computer does not require granular control beyond configuration settings at the ODP.NET version level, there is no need to specify ODP.NET configuration settings through configuration files.
The following is an example of a
web.config file for .NET Framework 2.0 and later:
The following is an example of
app.config for ODP.NET, Unmanaged Driver using .NET Framework 2.0, which sets some additional attributes as well as two UDT type mappings:
Oracle Data Provider for .NET, Managed Driver Configuration
ODP.NET, Managed Driver supports .NET configuration file-based settings in
machine.config , application.config , and web.config . It does not support Windows registry based configuration. ODP.NET, Managed Driver settings in .NET configuration files are similar to ODP.NET, Unmanaged Driver settings to make porting easier.
The ODP.NET, Managed Driver configuration file section name is
<oracle.manageddataaccess.client> as compared to <oracle.dataaccess.client> in ODP.NET, Unmanaged Driver. A typical .NET config that uses ODP.NET, Managed Driver has some or all of the following subsections nested within a <version> subsection under <oracle.manageddataaccess.client> section. Note the tag names are case sensitive, while the attribute names are case insensitive.
The ODP.NET, Managed Driver configuration and settings are described in the following sections. Many of the attributes are the same as ODP.NET, Unmanaged Driver. See Table 2-1 for detailed attribute descriptions.
version Section
All the information required by an application should be grouped under the
version subsections. Each <version number='X'> section contains parameters applicable for version X of the ODP.NET, Managed Driver. For example, <version number='4.112.3.60'> section parameters will be applicable only for those applications using ODP.NET, Managed Driver assembly 4.112.3.60.
Apart from version specific sections, there can also be a generic section
<version number='*'> . This section's parameters are applicable for all ODP.NET, Managed Driver versions. Parameters in the version specific section take precedence over the parameters of the generic section. The following is an example of a version section:
An application referencing ODP.NET, Managed Driver 4.112.3.60 has the following values set:
dataSources Section
This section can appear only under a
<version> section. The mapping between the different data source aliases and corresponding data descriptors should appear in this section. The following is an example.
The following precedence order is followed to resolve the data source alias specified in the
Data Source attribute in the connection string.
Note:
The 'data source' connection string attribute can alternatively be set to a full descriptor or Easy Connect syntax rather than a data source alias. The above precedence rules apply to resolving a data source alias only.
The ODP.NET managed driver reads and caches all the alias entries from the
app.config , web.config , machine.config , and from a tnsnames.ora file that is found at application start-up time. However, aliases that are defined in LDAP servers are resolved and cached on demand. This means for each unique alias that is used by the application, an alias resolution query is executed against an LDAP server and the full descriptor associated with the alias will be cached once it is fetched.
For developers that need to change or add alias settings while developing applications, one may consider using
OracleDataSourceEnumerator.GetDataSources() rather than restarting the application. Invoking this method will first wipe out existing cache entries that were read from the tnsnames.ora file and all aliases obtained from the LDAP Server. Then, the tnsnames.ora is re-parsed and all its entries will be cached again. Please note that the app.config , web.config , and machine.config entries are read only once at application start-up time and thus their contents are maintained and not re-parsed even if OracleDataSourceEnumerator.GetDataSources() is invoked.
The
OracleDataSourceEnumerator.GetDataSources() method invocation has an impact on the connection pool. This is because a connection pool, which is created for each unique connection string, will cache the resolved full descriptor information after the first connection is created for a given connection pool. After that, the connection pool uses the cached full descriptor information for all subsequent connection creations. Thus, for applications that have their tnsnames.ora or LDAP entries modified during the execution of an application where an alias points to a different database than before, one should call the OracleDataSourceEnumerator.GetDataSources() method to remove old cached entries. This should be followed by the invocation of the ClearPool(OracleConnection) instance method or the ClearAllPools() static method to remove existing connections and also have it obtain a new full descriptor value that was read by the invocation of OracleDataSourceEnumerator.GetDataSources() . Following this scheme will assure that all the connections in the connection pool uses the new full descriptor that is now associated with the alias and all connections in a connection pool is established to the same database.
The following keywords are supported within the descriptor setting:
Note:
See Also:
Oracle Database Net Services Reference for a detailed description of the attributes.
Requirements for connecting to a local database without specifying 'data source' connection string attribute:
Note:
When 'data source' connection string attribute is not specified, protocol defaults to 'tcp' and port defaults to '1521'.
settings section
This section can appear only under a
<version> section. Any ODP.NET, Managed Driver specific settings should appear in this section. The following is an example of a settings section:
A new default behavior has been introduced for ODP.NET Release 12.1.0.2 and higher when
InitialLobFetchSize is set to -1 . The new default value is LegacyEntireLOBFetch = 0 . To use the old behavior, set LegacyEntireLobFetch = 1 in the ODP.NET configuration. Refer to 'Setting InitialLONGFetchSize to -1' for more information.
ODP.NET, Managed Driver configuration settings that are supported:
There is no support for Oracle Advanced Security Option (ASO) encryption. Setting
SQLNET.ENCRYPTION_SERVER to required is not supported, resulting in client connection establishment failure. Not setting SQLNET.ENCRYPTION_SERVER or setting it to any other valid value is supported.
ODP.NET, Managed Provider only supports the ASO NTS authentication adapter. The database server must be on Windows, support NTS external authentication, and have
SQLNET.AUTHENTICATION_REQUIRED set to true , 1 , or on . The ODP.NET, Managed Driver client must utilize NTS external authentication as well. All other ASO NTS connection scenarios will fail since the client and server will not be able to agree on an ASO authentication mechanism.
Kerberos NTS external authentication is not supported. NTS external authentication is supported only through Microsoft NT LAN Manager (NTLM).
LDAPsettings section
This section can appear only under a
<version> section. Any ODP.NET, Managed Driver specific LDAP settings should appear in this section. The following is an example of a <LDAPsetting> subsection under the <LDAPsettings> section:
Lightweight Directory Access Protocol
ODP.NET, Managed Driver supports TNS alias resolution through a LDAP server/service, specifically Microsoft Active Directory and Oracle Internet Directory (OID). TNS alias resolution occurs when using the LDAPsettings section or
ldap.ora file settings. The LDAPsettings section settings take precedence over ldap.ora settings.
For Active Directory, only the
DIRECTORY_TYPE and DEFAULT_ADMIN_CONTEXT parameters are required in ldap.ora . When the DIRECTORY_SERVERS parameter is missing or has no value, the default LDAP server for the current domain will be used.
For OID, all
ldap.ora parameters must be set with valid values to complete configuration.
ODP.NET, Managed Driver and ODP.NET, Unmanaged Driver support the same level of security when using LDAP for name resolution.
See Also:
implicitRefCursor section
This section can appear only under a
<version> section. Any information about REF CURSOR parameters that need to be bound implicitly should appear in this section. The following is an example of an <implicitRefCursor> section:
distributedTransaction section
This section can appear only under a
<version> section. Any information about distributed transactions should appear in this section. The following is an example of a distributedTransaction section:
OMTSRECO_IP_ADDRESS : Specifies the machine name (or IP address) that the OraMTS Recovery service will be running on to resolve database in-doubt transactions. The default is the local machine name.
OMTSRECO_PORT : Specifies the port that the OraMTS Recovery service will be listening on to resolve database in-doubt transactions. The default is 2030.
ORAMTS_SESS_TXNTIMETOLIVE : Specifies the time in seconds that the transaction can remain inactive after it has been detached or delisted from the database. Once this time expires, the transaction is automatically terminated by the provider. The default is 120 seconds.
edmMappings section
This section can appear only under a
<version> section. Any information related to EDM mappings should appear in this section. The following is an example of an edmMappings section:
onsConfig section
Oracle Notification Service (ONS) can be configured using either local or remote configuration. Remote configuration is the preferred configuration for standalone client applications. Prior to 12c Release 1 (12.1), this section was mandatory for receiving ONS notifications. With 12.1, this section is optional and the information about the ONS daemons is received from the server itself. However, ODP.NET will also listen for events from any
<host:port> pairs that is provided by the user in this section in addition to the <host:port> pairs received from the server.
For local configuration, please ensure that ONS is configured and available on the node where ODP.NET is running, so that ODP.NET can receive events directly from the local ONS daemon. For client side ONS daemon configuration, refer to 'Client Side ONS Daemon Configuration.'. The following is a sample format for the local configuration:
Note:
The configFile specified in .NET config should contain the same localport and remoteport values as specified in the ons.config used by the local ONS daemon. This will enable the application to receive events from the local ONS daemon.
Remote configuration is used in scenarios where the application directly receives ONS events from the ONS daemons running on remote machines. One of the advantages of this configuration is that no ONS daemon is needed on the client end and, therefore, there is no need to manage this process.
The following is a sample format for remote configuration:
In case of remote configuration, the application has to specify the
<host>:<port> values for every potential database that it can connect to. The <host>:<port> value pairs represent the ports on the the different Oracle RAC nodes where the ONS daemons are talking to their remote clients.
Client Side ONS Daemon Configuration
ONS configuration is controlled by the ONS configuration file,
ORACLE_HOME /opmn/conf/ons.config . This file tells the ONS daemon how it should behave. The SRVCTL utility can be used to start and stop the ONS daemon. It is installed on each node by default during server install. Refer to Oracle Real Application Clusters Administration and Deployment Guide for more information on the SRVCTL utility.
Configuration information within ons.config is defined in simple name and value pairs. An example of
ONS.config is given below
Some parameters in the ons.config file are required and some are optional. Table Table 2-2 lists the required ONS configuration parameters and Table 2-3 lists the optional ONS configuration parameters.
Table 2-2 Required ONS Configuration Parameters
Table 2-3 Optional ONS Configuration Parameters
The
ons.config file allows blank lines and comments on lines that begin with the number sign (#).
Using Oracle Services for MTS with Oracle Data Provider for .NET, Managed Driver
ODP.NET, Managed Driver incorporates Oracle Services for MTS entire enlistment and commit functionality, allowing those functions to execute using managed code. The Oracle Services for MTS recovery service remains unmanaged.
The
Oracle.ManagedDataAccessDTC.dll is packaged with the ODP.NET, Managed Driver. This DLL includes the Oracle Services for MTS enlistment and commit functionality and must be deployed with Oracle.ManagedDataAccess.dll for any ODP.NET, Managed Driver applications using distributed transactions. It can run alongside the unmanaged Oracle Services for MTS version if unmanaged data access drivers, such as ODBC, are also using distributed transactions on the same machine.
There are two versions of
Oracle.ManagedDataAccessDTC.dll , one for 32-bit .NET Framework and one for 64-bit .NET Framework, installed with ODP.NET, Managed Driver. Both Oracle.ManagedDataAccessDTC.dll are fully managed, but they are platform-specific because the Microsoft Distributed Transaction Coordinator (MS DTC) application programming interfaces are unmanaged code. Thus, ODP.NET, Managed Driver enlistment and commit calls must distinguish whether they are calling 32-bit or 64-bit MS DTC.
The DLLs are located in the following directories:
Deploy the
Oracle.ManagedDataAccessDTC.dll from the directory appropriate for your .NET application's target platform, 32-bit or 64-bit.
Oracle.ManagedDataAccessDTC.dll should not be directly referenced by a .NET application. It will be implicitly loaded by ODP.NET, Managed Driver when using distributed transactions.
The Oracle Services for MTS recovery service does not need to run in the same machine as ODP.NET, Managed Driver. Administrators can specify the host machine name that has a running recovery service in the application's .NET config file.
See Also:
Oracle Services for MTS for Oracle Services for MTS setup of recovery service for ODP.NET, Managed Driver
Configuration differences between ODP.NET, Managed Driver and ODP.NET, Unmanaged Driver
Table 2-4 lists other configuration differences between ODP.NET, Managed Driver and ODP.NET, Unmanaged Driver.
Table 2-4 Configuration Differences between ODP.NET, Unmanaged Driver and ODP.NET, Managed Driver
Comments are closed.
|
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |