Logga på AD utan UPN och EKU i certifikaten

Att logga på Windows och AD med kort är numer inget som vållar några större bekymmer under normala omständigheter. Men om man utfärdar certifikat där EKU och UPN saknas kan det bli värre. Särskilt om man kör Windows Server 2003 på sina domänkontrollanter.

Inom SITHS får certifikaten automatiskt EKU och UPN men endast om man i förväg preparerat sina användare i HSA-katalogen med UPN, t.ex. svekar@nll.se, eller SE2321000016-5G74@sll.se.

EKU = Extended/Enhanced Key Usage

Dvs. den OID som Microsoft specificerat ska finnas för att markera att certifikatet är tänkt att användas för inloggning i Windows och AD.

eku

UPN = Unique Principal Name

Observera att ”RFC822-namn” är nåt annat, nämligen mailadress och det är inte samma sak som UPN.

upn

Men om man ”glömt” EKU/UPN, är man då tvingad till att utfärda nya certifikat?

a) Om du bara utfärdat ett mindre antal kort -> Gör om gör rätt
b) Om du utfärdat massor av kort -> Ändra så att nya kort får korrekta certifikat. För de som måste kunna göra domäninloggning kan man under en period, tills certifikaten ersatts, använda nedanstående metod.

Vi börjar med att titta på hur man gör med 2008 och längst ner på denna sida finns information om 2003. Kom ihåg dock att på XP-klienter är det inte möjligt att göra certifikat utan EKU/UPN valbara utan att helt göra om Ginan. I Windows 7 finns helt andra möjligheter.

Windows Server 2008 R2 med Windows 7 som klient

Vi börjar med att leta rätt på det konto som vi vill preppa för att logga på med certifikat utan EKU/UPN. Kanske kan nån scripta in detta automatiskt?) Högerklicka och välj ”Name Mappings…”

ad_name_mappings_001

Klicka ”Add…” på fliken ”X.509 Certificates”

ad_name_mappings_002

Nu måste du peka ut en certifikatsfil. Här kan man bli lite orolig:
Det är väl inte mappning på hela certifikatet det är frågan om? (Då blir nämligen reservkortshanteringen mer än lovaligt krånglig). Nejdå, det är inte så illa. Vi fortsätter:

ad_name_mappings_003

Här visas certifikatets hela ”Subject”. Kryssa i ”Use Subject”. Då sker matchningen baserat på Issuer/Subject och så länge man inte förändrar det så kommer även ett certifikat från samma CA på ett reservkort att fungera.. Tryck OK.

ad_name_mappings_004

Klart så långt

ad_name_mappings_005

Värdena hamnar i attributet ”altSecurityIdentities” (multisträng attribut) och kan förstås scriptas in om man har all indata

altSecurityIdentities

GPO – 1: Nu ska vi bara preparera vår Windows 7-klient så att den listar även certifikat utan EKU. Detta är en vanlig GPO som finns under \Konsolrot\Princip för Lokal dator\Datorkonfiguration\Administrativa mallar\Windows-komponenter\Smartkort\

ad_name_mappings_gpo_006

Citat Microsoft:
Du kan använda den här principinställningen för att tillåta användning av certifikat utan utökad nyckelanvändning (EKU) för inloggning. I Windows-versioner tidigare är Windows Vista krävs ett EKU-tillägg med en objektidentifierare för inloggning med smartkort. Den här principinställningen kan användas för att ändra den begränsningen. Om du aktiverar den här principinställningen kan certifikat med följande attribut användas för att logga in med ett smartkort: – Certifikat utan EKU – Certifikat med ett EKU för alla syften – Certifikat med ett klientautentiserings-EKU Om du inaktiverar eller låter bli att konfigurera den här principinställningen kan bara certifikat som innehåller en objektidentifierare för smartkortsinloggning användas för att logga in med ett smartkort.

GPO – 2: Vill man så kan man passa på att även sätta denna GPO för att se alla certifikat (om man har flera man vill kunna välja bland)

GPO_002

Såhär ser det ut med endast GPO – 2 satt (jag ser alla certifikat som har EKU och UPN)

ad_name_mappings_login_withoutgpo_007

Såhär ser det ut med GPO – 1 och GPO – 2 satta. Mitt ”Skåne-certifikat” utan EKU och UPN visas och kan användas.
(på just detta kort finns även Telia e-legitimation. Det är det som visas nere till höger)

ad_name_mappings_login_withgpo_008

Windows Server 2003

Saknar dina certifikat både EKU och UPN är det kört. Saknar du bara EKU så går det att lösa med lite fix i registry samt med en hotfix från Microsoft.

http://support.microsoft.com/kb/936358