9 #ifndef AUTHENTICATOR_H
10 #define AUTHENTICATOR_H
13 #include "AuthorityType.h"
15 #include "CallState.h"
16 #include "Exceptions.h"
17 #include "AuthenticatorTemplateList.h"
18 #include "Constants.h"
26 static const String& Tag() {
static const String tag=
"Authenticator";
return tag;}
28 static const String tenantlessTenantName();
31 bool updatedFromTemplate_ =
false;
33 bool validateAuthority_;
36 AuthorityType authorityType_;
38 String authorizationUri_;
41 String selfSignedJwtAudience_;
46 Authenticator(
const String& authority,
bool validateAuthority);
48 const String& authority()
const {
return authority_;}
49 const AuthorityType& authorityType()
const {
return authorityType_;}
50 bool validateAuthority()
const {
return validateAuthority_;}
51 bool isTenantless()
const {
return isTenantless_;}
52 const String& authorizationUri()
const {
return authorizationUri_;}
53 const String& tokenUri()
const {
return tokenUri_;}
54 const String& userRealmUri()
const {
return userRealmUri_;}
55 const String& selfSignedJwtAudience()
const {
return selfSignedJwtAudience_;}
56 const Guid& correlationId()
const {
return correlationId_;}
57 void correlationId(
const Guid& val) {correlationId_ = val;}
59 void updateFromTemplateAsync(CallStatePtr callState);
60 void updateTenantId(
const String& tenantId);
63 static AuthorityType detectAuthorityType(
const String& authority);
64 static String canonicalizeUri(
const String& uri);
65 static String replaceTenantlessTenant(
const String& authority,
const String& tenantId);
66 static bool isAdfsAuthority(
const String& firstPath);
70 using AuthenticatorPtr = ptr<Authenticator>;
74 #endif // AUTHENTICATOR_H
Definition: AuthenticatorTemplateList.h:18
Definition: Authenticator.h:24
Definition: AcquireTokenForClientHandler.h:14