---
title: Configuration settings
summary: Configuration properties, portal setup, and transitive runtime configuration consumed by SAIF.Application.Policy.
status: draft
owner: SAIF Documentation Generation
last_reviewed: 2026-07-31
library: SAIF.Application.Policy
reference_type: package
---

# Configuration settings

`SAIF.Application.Policy` reads no keyed app-settings and defines no custom configuration sections. Its direct configuration surface consists of two `AppGlobal.EnvironmentService` properties (`IsClientExternal`, `IsProduction`) plus portal setup statements that create the Oracle `Policy` portal and force the `GEN` database user.

## Configuration retrieval methods

| Method | Class / Interface | Namespace | Usage pattern |
| --- | --- | --- | --- |
| `IsClientExternal` | `IEnvironmentService` via `AppGlobal.EnvironmentService` | `SAIF.Framework.Security` | Read directly as a Boolean property to suppress Business Online access text for external clients |
| `IsProduction` | `IEnvironmentService` via `AppGlobal.EnvironmentService` | `SAIF.Framework.Security` | Read directly as a Boolean property to hide test information in production |
| `CreateOraclePortal("Policy")` | Data-layer portal setup | `SAIF.Framework` | Creates the named Oracle portal for policy reads |
| `DataLayer.DBUser = "GEN"` | Data-layer identity assignment | `SAIF.Framework` | Forces a fixed Oracle database user for the policy portal |
| `ApplicationSettingsBase` (`My.Settings`) | `MySettings` | `SAIF.Application.Policy.My` | Designer scaffolding exists but contains no configured settings |

## Environment API settings

| Setting key | Method | Data type | Purpose | Consuming class | Source |
| --- | --- | --- | --- | --- | --- |
| `IsClientExternal` | Property | Boolean | Suppresses Business Online access text for external clients | `PolicyAppManager` | `Application\SAIF.Application.Policy\PolicyAppManager.vb` |
| `IsProduction` | Property | Boolean | Hides diagnostic test information in production | `clsStandardPolicyHeaderSettings` | `Application\SAIF.Application.Policy\PolicyHeader\clsStandardPolicyHeaderSettings.vb` |

## AppSettings (Web.config)

No `ConfigurationManager.AppSettings` usage was identified.

## Database connection configuration

| Connection name | Provider | Retrieval method | Purpose | Source |
| --- | --- | --- | --- | --- |
| `Policy` | Oracle | `DataLayer.CreateOraclePortal("Policy")` | Primary Oracle policy portal for all application-layer reads | `Application\SAIF.Application.Policy\PolicyAppManager.vb` |
| `GEN` | Oracle | `DataLayer.DBUser = "GEN"` | Fixed Oracle database identity for the `Policy` portal | `Application\SAIF.Application.Policy\PolicyAppManager.vb` |

## Secure settings

No encrypted or secure-setting retrievals were identified in this library.

## Transitive configuration (from dependencies)

| Setting key | Method | Source dependency | Dependency type | Purpose |
| --- | --- | --- | --- | --- |
| `BDS_USER` | Environment/config lookup inside dependency | `SAIF.Business.View.Policy` | NuGet | Builds the SQL Server portal used by delegated group-membership authorization |
| `bdsDatabase` | Environment/config lookup inside dependency | `SAIF.Business.View.Policy` | NuGet | Supplies the SQL Server host or instance for delegated group-membership authorization |
| `BDS_DATABASENAME` | Environment/config lookup inside dependency | `SAIF.Business.View.Policy` | NuGet | Supplies the SQL Server database name for delegated group-membership authorization |

## Configuration dependencies

| Dependency | Type | Required at | Impact if missing |
| --- | --- | --- | --- |
| `AppGlobal.EnvironmentService` | Service | Runtime property evaluation | Business Online text and test-information gating cannot evaluate correctly |
| Oracle portal resolution for `Policy` | Service/configuration | Startup and retrieval | Portal creation fails and the manager marks the context not set and no-access |
| ODP.NET registration supplied by the host | Provider registration | Portal creation | Oracle portal creation can fail before policy retrieval begins* |
| `BDS_USER`, `bdsDatabase`, `BDS_DATABASENAME` | Dependency configuration | Delegated authorization branch | Group-user authorization inside `SAIF.Business.View.Policy` cannot execute correctly |

## Related documentation
- [Index](index.md)
- [Overview](overview.md)
- [Architecture](architecture.md)
- [Dependencies](dependencies.md)
- [Operations and processes](operations-processes.md)
- [Business rules](business-rules.md)
- [Database tables](database-tables.md)
- [Security and authorization](security-authorization.md)
- [SQL catalog](sql/index.md)
- [API reference](api/index.md)

> **Note:** Statements marked with `*` were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts.

## Sources
- `Application\SAIF.Application.Policy\PolicyAppManager.vb`
- `Application\SAIF.Application.Policy\PolicyHeader\clsStandardPolicyHeaderSettings.vb`
- `Application\SAIF.Application.Policy\app.config`
- `Application\SAIF.Application.Policy\My Project\Settings.settings`
- `Application\SAIF.Application.Policy\My Project\Settings.Designer.vb`
