How does ADFS communicate with AD? - active-directory

How does Active Directory Federation Service (ADFS) connects to a classic on-premise Active Directory Domain Service or simply known as (AD)?
Is it via the protocol HTTP?

AD FS connects to AD as a "standard" active directory supplicant for Username/Password or Certificate Authentication, and as a Kerberos relying party for Kerberos authentication. This means that it uses a variety of protocols to authenticate clients and retrieve user information. Most primarily, Kerberos is used for authentication and LDAP is used for user attribute retrieval.
The full list of ports used for AD Directory Services is quite long, and can be found at Service overview and network port requirements for Windows - Active Directory.
Generally, the AD and AD FS servers are considered to be on the same security level. ADFS Proxies (which are essentially layer-7 firewalls in their own right) are used in the DMZ to provide insulation between active directory and a potential attacker.

Related

Creating Azure AD Domain

I'm creating an instance of Azure AD Domain Services and following the steps found here:
https://learn.microsoft.com/en-us/azure/active-directory-domain-services/active-directory-ds-getting-started
In the section about DNS it states:
Network name conflicts: Ensure that the DNS domain name you have chosen for the managed domain does not already exist in the virtual network. Specifically, check whether:
You already have an Active Directory domain with the same DNS domain name on the virtual network.
The virtual network where you plan to enable the managed domain has a VPN connection with your on-premises network. In this scenario, ensure you don't have a domain with the same DNS domain name on your on-premises network.
You have an existing cloud service with that name on the virtual network.
I'm not quite sure I understand the restriction here, my Azure Active Directory has a custom domain of [mydomain].com. Is this saying I cannot use the [mydomain].com domain for the DNS entry when creating an "Azure AD Domain Services" instance?
The documentation is talking about Active Directory, not Azure Active Directory.
If you already have an AD domain setup on VMs in the same VNET or have a VPN connection to an on-premises network with an AD domain with the same domain name, you will run into conflicts as AAD DS will also register the domain.
If you are only using Azure AD without a connection to on-prem AD, you are fine.

Active Directory usage by ADFS, LDAP

I have few very specific questions to come to a understanding on Active Directory usage:
ADFS are the services/software to enable SSO login to applications using a single url for users stored in Active Directory. Right?
LDAP is a protocol that exposes other functionalities like fetching users, deleting user, authentication user via bind method etc. stored in Active Directory. Right?
Then can't LDAP and ADFS both work on the same Active directory? This link:
LDAP support in ADFS got me confused in where it is referring to LD and AD as separate entities.
Can't I apply both the mechanisms on same AD? I only have knowledge of LDAP. Trying to learn ADFS.
ADFS provides SSO capabilities for SaaS services and Modern LOB applications. Traditionally, it uses identities stored in Active Directory Domain Services to validate the credentials for a user. In 2016, we also added support to include identities stored in any 3rd party LDAP directory.
Irrespective of where the identity is stored ADFS offers SSO across the applications that trust it.
Hope this clarifies.
Thanks //Sam (Twitter: #MrADFS)
AD stores users, groups and credentials.
To access an attribute in AD, you use the LDAP protocol via e.g. the C# Directory Services API.
ADFS handles authentication against AD and also adds a federation layer on top of AD.
The correct way to access AD attributes via ADFS is to use claims-based authentication whereby you configure ADFS to provision the attributes (as claims) into the token and then extract them on the client side.

CDH Security using Kerberos and Microsoft Active Directory

I'm trying to secure my CDH cluster using Kerberos but I want to use the user info that I have in my Microsoft Active Directory.
Is there a way to use MS AD as Kerberos user lookup source?
Yes, MS AD is actually an umbrella set of technologies working together to provide enterprise directory services. The big four, as I call them, are Kerberos, LDAP, DNS and Group Policy. Each MS AD domain controller runs a Kerberos KDC, which is a database of user, service, and computer principals.

Is it possible to athenticate using Kerberos against a Kerberos enabled domain controller?

We are configuring a Siebel to authenticate against a Microsoft Active Directory with Kerberos enabled.
Kerberos authentication is not enabled in Siebel under Unix so we're planning to use simple authentication.
It is possible to authenticate to a Microsoft Active Directory without Kerberos when Kerberos is enabled in the domain controller?
Best regards,
Yes, you can authenticate to a Microsoft Active Directory without Kerberos, using either NTLM or LDAP. NTLM though, is disabled by default in AD 2008 and above. LDAP authentication through bind calls can be used as well by application servers who can't do ether NTLM or Kerberos. Classically, LDAP is meant as a directory lookup protocol and not really meant as an authentication protocol. Typically, these scenarios involve application servers running on non-Microsoft platforms. Be advised that Kerberos is the most secure protocol of the three and is the industry standard for authentication.

Connecting LDAP Server on Windows ADFS Server (default password?)

I have windows server running ADFS server. I want to Connect to ldap server on it. My questions are
Does running ADFS Server already have LDAP Server running or need to do anything for that? I believe it is running already because I could see open port 389 and 636.
Assuming LDAP server is running, I was trying to connect to it using Google App Directory Sync to get list of users However I was not able to authorize. Is there any default credentials to connect? Or steps to get credentials for LDAP server?
Thanks
An ADFS server is not an Active Directory server - ADFS only extends Active Directory's infrastructure. Ports 389 and 636 are available because ADFS supports the LDAP and LDAPS protocols for communication, and as such, ADFS can retrieve user attributes from Active Directory, and it can also authenticate users against Active Directory. If you already have a directory server running, you need to add it to ADFS as an account store.
There are no default credentials - just use an administrative account that exists in your Active Directory store, as mentioned in point one.
To clarify on terminology for ADFS:
Account Store in ADFS: This is the account store that ADFS authenticates the user against with some form of credential (e.g. Username/password). By default ADFS connects to the Active Directory Domain Services and adds it as a special account store that cannot be deleted. So, any users in this active directory forest or in it's trusted subsystem can authenticate to ADFS. So far, ADFS only supported Active Directory as an account store and nothing else. With Windows Server 2016, it now supports connecting any LDAP v3 compliant directory as an account store. ADFS does not open LDAP ports as it is not an LDAP server. If ADFS were collocated with a domain controller, you would see LDAP ports open.
Attribute Store in ADFS: This a store where you can augment additional information about the user AFTER the user authenticates. By default ADFS has a default attribute store for ADDS that is setup by virtue of the install. Beyond this, it has in-built adapters that can be instantiated to connect to SQL or ADLDS (lightweight directory service). It also has an extensible API to connect to any other attribute store of your choice via .NET. People connect to Oracle/SAP data base, FIM metaverse etc.
#Srikanth: You will use the ADFS claims language or the UI to query for additional data using the attribute store model. In the UI, you would see it when you configure the issuance authorization rules or the issuance claims rules.
Hope that helps
Sam (#MrADFS)

Resources