項目一覧
SSOに関するよくある質問
MistのSSO実装、要件、プロビジョニングなどに関するよくある質問にお答えします。
Q: 知っておくべきMistのSSO実装の基本は何ですか?
A: Mist は、同じ実装で、製品のいくつかの部分で SAML2.0 ベースの SSO をサポートしています。このドキュメントは管理者SSO向けに書かれていますが、ゲストアクセス用のSSOと、必須属性を除いて実装が同じであるPPSKセルフプロビジョニングもサポートしています。したがって、このドキュメントはMistのすべてのSSOに適用できます。
Mist のユーザー アカウントは、Mist への認証方法に基づいて、3 種類のアカウントのいずれかになります。Mistへのローカルアカウント、SSOアカウント、またはOAUTH2アカウントとして。アカウントは、これらのタイプのいずれかにしかなれません。そのため、SSOアカウントは常にIdPを介してMistに認証されます(ユーザーがアカウントタイプを変更しない限り)。
IdP アサーションとレスポンスに署名し、属性名の大文字と小文字を正しく区別してアサーション内の正しい属性を返してください。
Q: Mist は SSO アクセスでどの IdP をサポートしていますか?
A: Mist は SAML2.0 をサポートするすべての IdP をサポートします。
Q: Mist は SP と IdP によって開始される SSO をサポートしていますか?
A: はい、Mist は SP と IdP の両方が開始する SSO をサポートしています。ただし、SSOユーザーがMistする最初のログインはIdPを開始する必要があるという注意点があります。また、SP によって開始されるログインの場合、IdP に入力するエンティティ ID は ACS URL と同じである必要があることにも注意してください。
Q: アサーションで送信する必要がある属性は何ですか?
A: SAMLアサーションでMist期待する属性は次のとおりです。
大文字と小文字が重要であることに注意してください。
- 名前ID
- 役割
- 名(名)
- 姓
NameID は必須です。API経由で設定する場合を除き、ロールが必要ですdefault_role
。FirstName と LastName が推奨されますが、そうでない場合は ? ?をユーザーの姓名として使用します。
Q: どの NameID 形式をサポートしていますか?
A: NameID は、ユーザーの一意の意の ID として使用されます。メールアドレスと未指定に対応しています。ほとんどの人はメールを使用しますが、Mist SSO構成で未指定を構成する限り、実際には何でも送信できます。unspecifiedを使用する場合は、一意で一貫性がある限り、ほとんど何でも送信できます。未指定のMist内のユーザーの一意のIDが生成されることがわかります。
Q: ロールは何に使用されますか?
A: ロールは、ユーザーに付与する必要があるアクセス許可を派生させるために使用されます。アサーションで返されるロールは、[組織設定] ページの [Mist SSO ロール構成のロール] と一致します。ユーザー権限はSSOログインごとに動的に生成されることに注意してください。
Q: ユーザーの複数のロールを返すことはできますか?
A: はい、複数のロールが返され、一致した場合は、アクセス許可のスーパーセットが取得されます。デフォルトでは、すべてのロールが一致する必要があり、一致しない場合、ユーザーはアクセスを拒否されることに注意してください。ロールの部分一致を可能にするために、API オプションignore_unmatched_rolesがあります。または、ロールが一致しない場合の API オプションdefault_roleもあります。
アサーションでは、さまざまな形式で複数の役割を受け入れます。複数のロールは、コンマ区切り、複数の AttributeValue ペア、または CN 解析を使用して送信できます。次に例をいくつか示します。
カンマ区切りの「ロール」属性
<Attribute Name="Role"> <AttributeValue>"Employee,Mist,Developer"</AttributeValue> </Attribute>
#ロールの解析されたリスト
['Employee', 'Mist', 'Developer']
複数の「ロール」属性値のペア
<Attribute Name="Role"> <AttributeValue>"Employee"</AttributeValue> <AttributeValue>"Mist"</AttributeValue> <AttributeValue>"Developer"</AttributeValue> </Attribute>
#ロールの解析されたリスト
['Employee', 'Mist', 'Developer']
カンマで区切られた複数の AV ペアの組み合わせ
<Attribute Name="Role"> <AttributeValue>"Employee,Mist"</AttributeValue> <AttributeValue>"Developer"</AttributeValue> </Attribute>
#ロールの解析されたリスト
['Employee,Mist', 'Developer']
CN抽出の例 – "role_attr_extraction": "CN",
<saml2:Attribute ="Role"> <saml2:AttributeValue>CN=Employee,OU=groups,OU=ou1,OU=ou2</saml2:AttributeValue> <saml2:AttributeValue>CN=Mist,OU=groups,OU=ou1,OU=ou2</saml2:AttributeValue> <saml2:AttributeValue>CN=Developer,OU=ou1,OU=ou2</saml2:AttributeValue> </saml2:Attribute>
#ロールの解析されたリスト
['Employee’, ‘Mist', 'Developer']
Q: SSO エラーのトラブルシューティング方法を教えてください。
A: { api_endpoint}/api/v1/orgs/:{org_id}/ssos/:{sso_id}/failures を発行すると、エラーを表示できます。
失敗の理由と、受信したアサーションが表示されます。
API 呼び出しを発行するには、斜体で括弧で囲まれた用語を実際の値に置き換える必要があります。
-
{api_endpoint}
組織の API エンドポイント URL がわからない場合は、Juniper Mist ポータルの URL から取得できます。ポータルの URL は manage で始まります。対応する API エンドポイント URL は、 manage を api に置き換えます。次の例の太字の文字に注目してください。
ポータル URL
manage.ac2.mist.com/admin/?org_id=xxxxxxx-xxxx-xxx
対応するAPIエンドポイントURL
api.ac2.mist.com/admin/?org_id=xxxxxxx-xxxx-xxx
-
{org_id}
組織 ID は、Juniper Mistポータルの URL でも確認できます。ID は、文字 org_id= の後に表示されます。次の例の太字の文字に注目してください。
ポータル URL の組織 ID
manage.ac2.mist.com/admin/?org_id=12345678-1a2b-3456cdef-xyz123
- {sso_id}
SSO ID を見つけるには、API 呼び出し {api_endpoint}/api/v1/orgs/:{org_id}/ssos を発行します。
[ID] フィールドで SSO ID を見つけます。
Q: Mist 内で SSO ユーザーを手動でプロビジョニングする必要がありますか?
A: いいえ、ありません。SSO ユーザーのアクセスは、IdP によってオンデマンドで付与されます。つまり、SSOユーザーはIdPによって認証されますが、Mist認証されます。Mist ダッシュボードへのアクセス レベルは、Mist で定義されたロールに一致するアサーションで返されるロール属性によって制御されます。
Q: SSOユーザーの初回ログインプロセスを教えてください。
初回ログイン時に、Mist組織のSSO URLをSSOユーザに提供します。この手順は、アカウントをSSOアカウントとして確立するために、最初のログインにのみ必要です。その後、SSO URLを使用するか、Juniper Mistポータル(manage.mist.com)に直接移動できます。SSOを使用したユーザー設定の詳細については、「 IDプロバイダとユーザーの追加」を参照してください。
Q: どの SSO ユーザが組織にアクセスしたかを知るには、どうすればよいですか?
A: [組織] タブの [監査ログ] を確認します。次のようなログが表示されます。 Austin Powers austin@groovy.com Login with Role "Groove-Master"
Q: Mist にはメタデータ ファイルがありますか。
A: はい、/api/v1/orgs/:org_id/ssos/:sso_id/metadata または /metadata.xml にあります。
例えば:
<md:EntityDescriptor xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" entityID="https://saml-x6qlonl8.mist.com" validUntil="2032-03-29T00:44:08.503310+00:00"> <md:SPSSODescriptor AuthnRequestsSigned="false" WantAssertionsSigned="true" protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol"> <md:SingleLogoutService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://api.mist.com/api/v1/saml/x6qlonl8/logout"/> <md:NameIDFormat> urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified </md:NameIDFormat> <md:AssertionConsumerService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://api.mist.com/api/v1/saml/x6qlonl8/login" index="0" isDefault="true"/> <md:AttributeConsumingService index="0"> <md:ServiceName xml:lang="en-US">Mist</md:ServiceName> <md:RequestedAttribute Name="Role" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic" isRequired="true"/> <md:RequestedAttribute Name="FirstName" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic" isRequired="false"/> <md:RequestedAttribute Name="LastName" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic" isRequired="false"/> </md:AttributeConsumingService> </md:SPSSODescriptor> </md:EntityDescriptor>
Q: 組織に複数のSSOが必要です。Mistはそれをサポートしていますか?
A:はい、もちろんです。組織内の複数のSSOがサポートされています。組織は複数のSSOを持つことができ、ユーザーは複数の組織に対する権限を持つことができますが、MistのSSOユーザーは1つのSSOにしか「属」できないことに注意してください。これは通常、「開発」と「本番」のSSOがあり、両方に同じメールアドレスを使用する場合に最も関連します。
Q: 複数の組織がありますが、複数の組織でSSOを使用できますか?
A:はい、これも可能です。2つの方法で処理できます。まず、SSOがある「ホーム」組織があります。その後、ユーザを 2 番目の組織に手動で招待できます。ログインすると、両方の組織が一覧表示されます。2つ目の方法は、MSP機能(アクセス制御機能)を使用することです。SSO を MSP レベルに配置し、返されたロールに基づいて、ユーザは MSP またはMSP 内の特定の組織のみにアクセスできます。
Q: Mist 内で SSO を削除するとどうなりますか?
A: SSOを削除すると、そのSSOに関連付けられているMist内のすべてのユーザーアカウントが自動的に削除されます。これは、"dev" から "production" など、ある SSO から別の SSO に移行する場合に特に便利です。
Q: API トークンは SSO ユーザーとどのように連携しますか?
A: SSOユーザーは、組織APIトークンを使用できます。スーパーユーザーは、必要な権限で組織APIを作成できます。SSOユーザーは、「ユーザーベース」のAPIトークンをサポートしていません。または、お客様の好みに基づいてローカルサービスアカウントを使用することもできます。
Q: Mist内にローカルユーザーが必要ですか?
A: SSO の使用を開始すると、1 つを除いて、Mist で以前に作成したローカル ユーザー アカウントを削除できます。SSOで問題が発生した場合に組織からロックアウトされないように、ローカルユーザをスーパーユーザロールに保持することをお勧めします。SSOとローカルアカウントの両方に1つのメールアドレスを使用することはできないため、ローカルアカウントはSSOで使用するメールアドレスとは異なるメールアドレスで設定する必要があります。たとえば、ローカルアカウントには個人のメールアドレスを使用し、SSOアカウントには職場のメールアドレスを使用します。SSOユーザーを設定する手順の詳細については、「 IDプロバイダとユーザーの追加」を参照してください。