//
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements.  See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership.  The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License.  You may obtain a copy of the License at
//
//   http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied.  See the License for the
// specific language governing permissions and limitations
// under the License.
//
=== Client Applications

Client Applications represent web applications (including <<secure-remote-access,SRA>>) allowed to integrate with
<<web-access,WA>>.

Depending on the communication protocol, the following client applications are supported:

* OpenID Connect Relying Party
* SAML 2.0 Service Provider
* CAS Service

When defining a client application, the following parameters shall be specified:

. id - unique number identifier of the current client application
. <<realms,realm>> - used to inherit policies
. name - regular expression to match requests
. description - optional textual description
. username attribute provider, mapping to
https://apereo.github.io/cas/7.1.x/integration/Attribute-Release-PrincipalId-Attribute.html[CAS Attribute-based Principal Id^]
. <<policies-authentication,authentication policy>>
. <<policies-access,access policy>>
. <<policies-attribute-release,attribute release policy>>
. <<policies-ticket-expiration,ticket expiration policy>>
. additional properties
. logout type, mapping to
https://apereo.github.io/cas/7.1.x/installation/Logout-Single-Signout.html#slo-requests[the equivalent CAS setting^]

More parameters are required to be specified depending on the actual client application type.

[NOTE]
Client Applications are dynamically translated into
https://apereo.github.io/cas/7.1.x/services/Service-Management.html[CAS Services^].
