== Features ==
`<code>SERVICE_LOGIN` </code> is the root class of the system, deriving directly from `<code>SYSTEM_OBJECT`</code>. Below This MetaClass and its derivates are located in the namespace <code>System.Main.ServiceLogin</code>. In addition to that, there are derivates for the following derivates:located in the namespace <code>Custom.Main.ServiceLogin</code>. These are intended to be used by customizers because of their ease of access by code (same class name as MetaClass name).* {| class="wikitable"|'''MetaClass'''|'''Properties'''|-|<code>SERVICE_LOGIN</code>|''No Properties''|-|<code>TOKEN_AUTH_SERVICE_LOGIN</code>| * <code>TOKEN</code> * * |-|<code>BASIC_AUTH_SERVICE_LOGIN</code>| * <code>USERNAME</code> * <code>PASSWORD</code> * * |-|<code>WINDOWS_AUTH_SERVICE_LOGIN</code>|* <code>DOMAIN</code> * <code>USERNAME</code> * <code>PASSWORD</code> * * DOMAIN |-* |<code>OAUTH2_AUTH_SERVICE_LOGIN</code>| * <code>TENANT_ID</code> * <code>CLIENT_ID</code> * <code>CLIENT_SECRET</code> * * <code>CLIENT_CERTIFICATE</code> * * <code>IDP_URL</code> * <code>GRANT_TYPE</code> * <code>SCOPE</code>|}
The fields with the asterisk (*) are password fields that encrypt the text and store the result in the database. To get the decrypted counterpart, the C# field <SECRETNAME>_DECRYPTED (e.g. TOKEN_DECRYPTED) needs to be accessed. All of the ServiceLogin-related properties can be accessed via custom code (or interface code, respectively) either using PascalCase or SCREAMING_SNAKE_CASE.