mirror of
				https://github.com/jellyfin/jellyfin.git
				synced 2025-11-03 19:17:24 -05:00 
			
		
		
		
	
		
			
				
	
	
		
			41 lines
		
	
	
		
			917 B
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			917 B
		
	
	
	
		
			C#
		
	
	
	
	
	
#nullable disable
 | 
						|
 | 
						|
#pragma warning disable CS1591
 | 
						|
 | 
						|
using System.Threading.Tasks;
 | 
						|
using Jellyfin.Data.Entities;
 | 
						|
using MediaBrowser.Model.Users;
 | 
						|
 | 
						|
namespace MediaBrowser.Controller.Authentication
 | 
						|
{
 | 
						|
    public interface IAuthenticationProvider
 | 
						|
    {
 | 
						|
        string Name { get; }
 | 
						|
 | 
						|
        bool IsEnabled { get; }
 | 
						|
 | 
						|
        Task<ProviderAuthenticationResult> Authenticate(string username, string password);
 | 
						|
 | 
						|
        bool HasPassword(User user);
 | 
						|
 | 
						|
        Task ChangePassword(User user, string newPassword);
 | 
						|
    }
 | 
						|
 | 
						|
    public interface IRequiresResolvedUser
 | 
						|
    {
 | 
						|
        Task<ProviderAuthenticationResult> Authenticate(string username, string password, User resolvedUser);
 | 
						|
    }
 | 
						|
 | 
						|
    public interface IHasNewUserPolicy
 | 
						|
    {
 | 
						|
        UserPolicy GetNewUserPolicy();
 | 
						|
    }
 | 
						|
 | 
						|
    public class ProviderAuthenticationResult
 | 
						|
    {
 | 
						|
        public string Username { get; set; }
 | 
						|
 | 
						|
        public string DisplayName { get; set; }
 | 
						|
    }
 | 
						|
}
 |