Как войти в систему, используя Identity Server 3 wsfed из углового приложения - PullRequest
0 голосов
/ 21 декабря 2018

Мне нужно создать приложение, которое требует единого входа, используя IdentityServer3 wsfed, я создаю приложение в Angular 7. Мы уже запускаем несколько приложений, но все они в настоящее время работают в MVC, но я не нашел точную документацию для Angular..

В Angular 7 мы пробовали пакет oidc-client, но он не работал.Я установил следующее свойство.

var settings = {
    authority: 'https://localhost:44378/identity',
    client_id: 'My App',
    redirect_uri: 'https://<systemUrl>:50443/',
    scope: 'openid projects-api profile'
};

В приложении MVC для настройки необходимо выполнить следующее.

<microsoft.identityModel>
<service>
    <audienceUris>
    <add value="https://<ApplicationUrl>/"/>
    </audienceUris>
    <federatedAuthentication>
        <wsFederation requireHttps="false" realm="https://<ApplicationUrl>/" issuer="https://<IdentityServerURL>/wsfed" passiveRedirectEnabled="true"/>
        <cookieHandler requireSsl="false"/>
    </federatedAuthentication>
<issuerNameRegistry type="Microsoft.IdentityModel.Tokens.ConfigurationBasedIssuerNameRegistry, Microsoft.IdentityModel, Version=3.5.0.0, Culture=neutral, PublicKeyToken=XXXXXXXXX">
    <trustedIssuers>
    <add thumbprint="<thumbprint>" name="https://<IdentityServerURL>/wsfed"/>
        </trustedIssuers>
</issuerNameRegistry>
    </service>
</microsoft.identityModel> 

Мое приложение перенаправляется на экран входа в систему IdentityServer, но не можетИдентификация приложения. Когда мы размещаем новое приложение в новом URL-адресе, нам нужно добавить запись в таблицу проверяющей стороны и передать URL-адрес с помощью свойства realm серверу Identity Server.Я не уверен, как передать это в Angular.также в доверенных лицах у нас есть отпечаток большого пальца, я не уверен, как это использовать тоже.Какой правильный пакет для углового использования SSO с Identityserver3 wefed.

...