예제 #1
0
        private async Task <IdentityServiceResult> UpdateClientSecretHashAsync(
            IApplicationClientSecretStore <TApplication> clientSecretStore,
            TApplication application,
            string clientSecret)
        {
            var hash = clientSecret == null ? null : PasswordHasher.HashPassword(application, clientSecret);
            await clientSecretStore.SetClientSecretHashAsync(application, hash, CancellationToken);

            return(IdentityServiceResult.Success);
        }
예제 #2
0
        protected virtual async Task <PasswordVerificationResult> VerifyClientSecretAsync(
            IApplicationClientSecretStore <TApplication> store,
            TApplication application,
            string clientSecret)
        {
            var hash = await store.GetClientSecretHashAsync(application, CancellationToken);

            if (hash == null)
            {
                return(PasswordVerificationResult.Failed);
            }

            return(PasswordHasher.VerifyHashedPassword(application, hash, clientSecret));
        }