2014年2月14日 星期五

Claims-Based Identity 筆記




ADFS 2.0 安裝與設定

ADFS 2.0 新增信任的信賴憑證者

ADFS 2.0 使用VS2013設定Claims-Aware Application

手動設定WIF


ADFS 2.0 使用VS2013設定Claims-Aware Application

首先新增一個Web專案

這裡以MVC專案為例,選擇變更驗證

驗證方式改成組織帳戶,登入方式改成內部部署,並輸入FederationMetadata.xml的網址和應用程式的網址,需要SSL

FederationMetadata.xml的位置可在ADFS的服務>>端點找到

驗證方式變更為組織驗證(內部部署)後,按下確定建立新專案

將網站部署到IIS後,輸入該網站的網址來測試一下,因為SSL用的憑證是自已發的,所以會有警告訊息

接下來會轉向到STS去做驗證,一樣會有SSL的警告訊息

接下來預設是會跳出視窗讓你輸入帳密

如果要改成登入頁面的方式,可以到adfs的web.config中去設定一下

找到localAuthenticationTypes區段,把forms的順序換到最上面即可
如果要自訂登入頁面,就把後面的Page指定的頁面換掉即可
<microsoft.identityServer.web>
    <localAuthenticationTypes>
        <!-- 把Forms換到最上面 後面的page就是登入頁面-->
        <add name="Forms" page="FormsSignIn.aspx" />
        <add name="Integrated" page="auth/integrated/" />
        <add name="TlsClient" page="auth/sslclient/" />
        <add name="Basic" page="auth/basic/" />
    </localAuthenticationTypes>
    <commonDomainCookie writer="" reader="" />
    <context hidden="true" />
    <error page="Error.aspx" />
    <acceptedFederationProtocols saml="true" wsFederation="true" />
    <homeRealmDiscovery page="HomeRealmDiscovery.aspx" />
    <persistIdentityProviderInformation enabled="true" lifetimeInDays="30" />
    <singleSignOn enabled="true" />
</microsoft.identityServer.web>
</configuration>

登入的方式就會變成一般的登入頁面

帳號驗證成功後就會回到一開始的網站,並顯示出轉送規則中的名稱



ADFS 2.0 新增信任的信賴憑證者

接下來開始新增RP(Relying Party)

設定精靈的畫面

這裡用手動輸入為例子

輸入一個給人用來識別的名稱

選擇AD FS 2.0 設定檔

這裡用簡單的例子不加密所以直接下一步

啟用 WS-Federation 被動通訊協定的支援,注意SSL和結尾的/

這裡的識別碼是程式要看的,也就是audienceUris

允許所有使用者存取

準備新增信任

新增完成,接下來順便新增要轉換的資料

發佈轉換規則中新增規則

這裡以LDAP屬性為例

把LDAP的屬性,轉成要傳出的宣告類型

轉換規則設定完成

到此新增RP完成

ADFS 2.0 安裝與設定

Windows 2008 Server內建的ADFS是1.0版,要安裝2.0版需要手動下載安裝
安裝的過程還滿簡單的,只有幾個設定而已,開始下一步吧


同意授權合約才可繼續下一步

這裡以安裝同盟伺服器為例子

安裝的先決條件軟體,需要一點時間

安裝好了

先來設定同盟伺服器

建立一個新的Federation Server

選擇獨立同盟伺服器

這裡需要SSL憑證,要測試的話可以先用本機簽署一個

先打開IIS選擇伺服器憑證

建立自我簽署憑證

輸入一個好記的名稱

建立完成

回來ADFS的設定畫面,應該可以看到剛建立的憑證

準備完成

接下來就讓安裝精靈跑一會吧

到此安裝完成