Technical Documentation - Users API (on the example of KLA)

The UsersAPI is installed directly underneath C:\inetpub\wwwroot and is configured with the following file: C:\inetpub\wwwroot\UsersAPI\appsettings.json.

The whole UsersAPI can be tested using Swagger: https://server/UsersAPI/Swagger

Example configuration of Users API on KLA ( Passwords are fake):

{ "Logging": { "LogLevel": { "Default": "Information", "Microsoft.AspNetCore": "Warning" } }, "AllowedHosts": "*", "ApiKey": "blablabla", "ConnectionStrings": { "UserSqlDatabaseConnection": "Data Source=CA1PRODSQL12\\PVFI2019;Initial Catalog=UserPref;MultipleActiveResultSets=True;Connection Timeout=60;User Id=vfiadmin;password=blablabla;Trusted_Connection=False;TrustServerCertificate=True" }, "UpdateUserGroups": { "CreateMissingUser": true, "UserNameIsAlsoAnEmailSoSetTheEmailToUserNameWhenCreatingMissingUser": true, "DefaultUserType": "USER", "CallbackUrl": https://webapi.kla-tencor.com/vfi/ftapi/access, "CallbackUsername": "vfiadmin", "CallbackPassword": "blablabla" } }

 

Here is a sample request to get user permissions (passwords are fake)

curl -X 'POST' \  'https://vfi.adcorp.kla-tencor.com/UsersAPI/User/UserPermissions' \  -H 'accept: text/plain' \  -H 'api-key: blablabla' \  -H 'Content-Type: application/json' \  -d '[  Kenneth.Jonsson@kla-tencor.com ]'

 

In responce, the permissions that are integer numbers give access to catalogues that have an identity with that number (feature is more or less specific to KLA). Some users will have additional permissions, like "Feedback", "Synchronize", "Administration".

Below is the example of responce:

[ { "user": kenneth.jonsson@kla-tencor.com, "permissions": [ "186", "19", "340", "47", "603", "605", "657", "690", "695", "771", "774", "777", "782", "796" ] } ]

 

Thomas who developed the Users API can be a point of contact if the info in swagger/here is not sufficient.