我已使用 Microsoft Azure 在 Salesforce 中设置单点登录。我已按照 the official tutorial from Microsoft 在设置 > 设置 > 身份 > 单点登录设置
配置菜单中完成了此操作。 。我能够使用 Azure Active Directory 中的用户帐户成功登录 Salesforce,并启用即时配置。
我希望能够使用登录用户来验证对不同 Azure API(例如 Azure Blob 存储)的进一步请求。使用此配置可以吗?
我的假设是,在单点登录过程中,Azure 将某种形式的代码或 token 返回给 Salesforce,然后我可以在将来的请求中使用它来获取特定 API 请求的身份验证 token 。但是,我不清楚如何或在哪里访问此代码/ token (或者我的假设是否实际上正确)。
最佳答案
当我在 AAD 集成的 Salesforce 端时,我没有看到任何看起来像 session id 的内容,但话又说回来,我不是 Azure 人员。可能是我的客户禁用的东西。
如果您遵循 SF 可能为您生成的指南 a sample Apex class用于即时 (JIT) 处理登录并根据从 AAD 获取的数据创建/更新用户。
您可以编辑此类,添加一些 System.debug(JSON.serializePretty(attributes));
以查看 AAD 在 SAML 断言中发送的内容。 (或者断言本身,但根据我的内存,它将进行 Base64 编码)。您的 SF 管理员将知道如何向您指定为系统用户的用户添加调试日志记录(此代码将以该用户的身份执行)。
另请参阅https://stackoverflow.com/a/63992670/313628和 https://stackoverflow.com/a/58965058/313628
关于azure - 使用 Salesforce 中的 Azure SSO 详细信息对 Azure REST API 请求进行身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64553838/