This framework is a fork and further development of Joel Rennich's [NoMAD-ADAuth](https://github.com/jamf/NoMAD-ADAuth) Framework. It represents his experience and the extensive development hours dedicated to NoMAD's Active Directory authentication.
Many thanks to Joel for his work on NoMAD and NoMAD-ADAuth! Without his ideas and goot work on [NoMAD](https://github.com/jamf/NoMAD) and [NoMAD 2](https://github.com/jamf/NoMAD-2) this Framework and our depending apps could never happen!
<!-- markdownlint-disable -->
This framework allows to easily add a robust AD integration to any macOS application.
This document was moved to [another location](https://faumac.pages.rrze.fau.de/dogeadauth/documentation/dogeadauth/).
## Overview
<!-- This redirect file can be deleted after <2044-12-20>. -->
<!-- Redirects that point to other docs in the same project expire in three months. -->
<!-- Redirects that point to docs in a different project or site (for example, link is not relative and starts with `https:`) expire in one year. -->
<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/redirects.html -->
The [doge AD authentication framework](https://faumac.pages.rrze.fau.de/dogeadauth/documentation/dogeadauth/) allows you to present a username and password to the Framework and have it get tickets for the user and then lookup the user's information in AD. In addition the framework is:
- site aware
- able to change passwords
- able to use SSL for AD lookups
- can have the site forced or ignored
- is aware of network changes, and will mark sites to be re-discovered on changes
- perform recursive group lookups
## Adding dogeADAuth to your project
dogeADAuth is a [Swift Package Manager](https://www.swift.org/package-manager/)(SPM) Package and can imported as usual through *Xcode File* > *Add Package Dependencies...* using the [project URL](https://gitlab.rrze.fau.de/faumac/dogeadauth)
## Basic Usage of the Framework via Delegate
- Drag the framework into your project in the Embedded Binaries section of the target
- Import dogeADAuth into your class
- Adopt dogeADUserSessionDelegate, and then add the stubs suggested to conform to the protocol