...
...
...
...
Environment: OnPrem
Admin App Version: >= 2.2.0
Note: Admin App version 2.2+, the encryption and decryption operation are using AES algorithm. So, it is very uncommon to encounter the "key and secret cannot be used in that state" issue.
...
If user is in any of the above-mentioned situation, please follow the following steps to recover the application and force the first-time setup on Admin App.
Steps for Recovering the Application on Shared Instance mode
1) Clear Configuration Parameters & Force Admin App's First-Time Setup
- Please make sure to stop ODS API and Admin App websites under IIS.
Connect to SQL Server on SSMS.
Select the EdFi_Admin database.
Execute the following sql commands for clearing all the data records created during first time setup process.
Code Block language sql title Void first time setup updates collapse true BEGIN TRAN DECLARE @ApplicationId INT; SELECT @ApplicationId = ApplicationId FROM dbo.Applications WHERE ClaimSetName = 'Ed-Fi ODS Admin App' DELETE FROM dbo.ClientAccessTokens WHERE EXISTS ( SELECT 1 FROM dbo.ApiClients WHERE ClientAccessTokens.ApiClient_ApiClientId = ApiClients.ApiClientId AND Application_ApplicationId = @ApplicationId ) DELETE FROM dbo.ApiClients WHERE Application_ApplicationId = @ApplicationId DELETE FROM dbo.ApplicationEducationOrganizations WHERE Application_ApplicationId = @ApplicationId DELETE FROM dbo.ProfileApplications WHERE Application_ApplicationId = @ApplicationId DELETE FROM dbo.Applications WHERE ApplicationId = @ApplicationId DELETE FROM adminapp.SecretConfigurations DELETE FROM [EdFi_Admin].[adminapp].[OdsInstanceRegistrations] UPDATE dbo.Applications set OdsInstance_OdsInstanceId = null -- making sure to remove the foreign key constrain UPDATE [EdFi_Admin].[adminapp].[ApplicationConfigurations] SET FirstTimeSetUpCompleted = 0 DELETE FROM dbo.OdsInstances COMMIT TRAN
Once successfully executed the above mentioned SQL script, please restart the Admin App website under IIS
- Now browsing the Admin App will take user to the first time setup page
For recovering already created vendor applications on Admin App, user needs to manually update OdsInstance_OdsInstanceId column on dbo.Applications table to have default Ods instance id. On SharedInstance mode will be having only one OdsInstance on dbo.OdsInstances table.
Code Block language sql title Update Applications collapse true DECLARE @odsinstanceid INT SELECT TOP 1 @odsinstanceid = OdsInstanceId FROM [dbo].[OdsInstances] Update [EdFi_Admin].[dbo].[Applications] set OdsInstance_OdsInstanceId = @odsinstanceid where OdsInstance_OdsInstanceId is null
...
Environment: Azure
Admin App Version: < 2.2.0
Issues
The application deployed and First-Time setup was successful, however you are unable to proceed further with the Admin App settings page or you get an error message saying that the key and secret can not be used in that state.
Cause
Admin App secret configuration and/or Azure SQL configuration values became corrupted for whatever reason.
Steps for Recovering the Application
1) Clear Configuration Parameters & Force Admin App's First-Time Setup
On this step, we need to clear all the data records created during first time setup.
...
5. Once the SQL commands executed successfully. Please start the ODS API and Admin App websites under IIS or within the Azure portal App Service.
2) Update the Admin App Configuration Parameters
There is a table in the EdFi_Admin database called adminapp.AzureSqlConfigurations. This table holds the encrypted configuration parameters used by the admin app.
...
Code Block | ||||
---|---|---|---|---|
| ||||
BEGIN TRAN UPDATE adminapp.AzureSqlConfigurations set field='{"AdminCredentials":{"Password":"PW Specified in Deployment Script","UserName":"SERVER Master UN"},"HostName":"","ProductionApiCredentials":{"Password":"Enter PW","UserName":"EdFiOdsProductionApi"},"AdminAppCredentials":{"Password":"","UserName":"EdFiOdsAdminApp"}}' WHERE Id=1; COMMIT TRAN |
3) Update Admin App web site on IIS or Azure
Note: That older versions of Admin app need the presence of “SetupRequired” file. This indicates to the first time setup process that it has not run. If the file not present, this means that the first-time setup was completed. Recreating the file will enforce the First time setup process to run again.
...
https://www.gslab.com/blogs/kudu-azure-web-app
References
If you have any questions on how to connect to the EdFi-Admin database please refer to this articles below:
...