mirror of
https://github.com/esiur/esiur-dart.git
synced 2026-04-04 02:08:21 +00:00
IAuth
This commit is contained in:
18
lib/src/Security/Membership/AuthorizationResults.dart
Normal file
18
lib/src/Security/Membership/AuthorizationResults.dart
Normal file
@@ -0,0 +1,18 @@
|
||||
import '../../Net/Packets/IIPAuthPacketIAuthDestination.dart';
|
||||
import '../../Net/Packets/IIPAuthPacketIAuthFormat.dart';
|
||||
import 'AuthorizationResultsResponse.dart';
|
||||
|
||||
class AuthorizationResults
|
||||
{
|
||||
AuthorizationResultsResponse response = AuthorizationResultsResponse.Failed;
|
||||
int destination = IIPAuthPacketIAuthDestination.Self;
|
||||
int requiredFormat = IIPAuthPacketIAuthFormat.None ;
|
||||
String clue = "";
|
||||
|
||||
int timeout = 0; // 0 means no timeout
|
||||
int reference = 0;
|
||||
|
||||
DateTime issue = DateTime.now();
|
||||
|
||||
//bool expired => timeout == 0 ? false : (DateTime.UtcNow - Issue).TotalSeconds > Timeout;
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
enum AuthorizationResultsResponse
|
||||
{
|
||||
Success,
|
||||
Failed,
|
||||
Expired,
|
||||
ServiceUnavailable,
|
||||
IAuthPlain,
|
||||
IAuthHashed,
|
||||
IAuthEncrypted
|
||||
}
|
||||
26
lib/src/Security/Membership/IMembership.dart
Normal file
26
lib/src/Security/Membership/IMembership.dart
Normal file
@@ -0,0 +1,26 @@
|
||||
import '../../Core/AsyncReply.dart';
|
||||
import '../../Data/DC.dart';
|
||||
import '../../Net/Packets/IIPAuthPacketHashAlgorithm.dart';
|
||||
import '../Authority/Session.dart';
|
||||
import 'AuthorizationResults.dart';
|
||||
|
||||
abstract class IMembership
|
||||
{
|
||||
//public event ResourceEventHandler<AuthorizationIndication> Authorization;
|
||||
|
||||
AsyncReply<String?> userExists(String username, String domain);
|
||||
AsyncReply<String?> tokenExists(int tokenIndex, String domain);
|
||||
|
||||
AsyncReply<DC?> getPassword(String username, String domain);
|
||||
AsyncReply<DC?> getToken(String tokenIndex, String domain);
|
||||
AsyncReply<AuthorizationResults> authorize(Session session);
|
||||
AsyncReply<AuthorizationResults> authorizePlain(Session session, int reference, value);
|
||||
AsyncReply<AuthorizationResults> authorizeHashed(Session session, int reference, int algorithm, DC value);
|
||||
AsyncReply<AuthorizationResults> authorizeEncrypted(Session session, int reference, int algorithm, DC value);
|
||||
|
||||
AsyncReply<bool> login(Session session);
|
||||
AsyncReply<bool> logout(Session session);
|
||||
bool get guestsAllowed;
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user