应用程序的访问控制
MATLAB®生产服务器™Azure等与OAuth2集成供应商®Active Directory (Azure广告)和PingFederate®,使用JSON Web标记(jwt)限制用户访问应用程序或存档部署到服务器。应用程序访问控制是只提供给客户使用MATLAB生产服务器RESTful API为MATLAB函数执行与服务器通信。授权客户端必须发送一个访问令牌在HTTP头当他们请求到服务器。这个标题的格式授权:无记名<访问令牌>
。设置本地服务器实例的访问控制,您必须定义一个访问控制配置文件和一个访问控制策略文件,并设置access-control-provider
财产OAuth2
在main_config
服务器配置文件。
访问控制配置文件
帮助核实每一个用户的身份,将请求发送给一个本地服务器实例,服务器管理员必须定义一个访问控制配置文件以JSON格式。服务器使用访问控制配置文件中的参数验证JWT,包含一个客户端请求。默认的配置文件的路径和名称/ config / jwt_idp.json
。您可以更改配置文件的路径和名称通过设置access-control-config
财产。如果你改变的路径、名称或内容的配置文件,您必须重新启动服务器的更改生效。
访问控制配置文件包含以下参数:
参数 | 必需的或可选的 | 描述 |
---|---|---|
版本 | 要求 | 配置文件版本号的模式。版本号是一个JSON字符串的格式主要的# 。小# 。补丁# ,每个号码是一个非负整数。集版本 来1.0.0 。 |
jwtIssuer | 要求 | JWT发行人身份提供商的元数据。元数据指定为一个JSON字符串。元数据字符串必须匹配国际空间站 JWT索赔。例如,Azure广告,设置jwtIssuer 来https://sts.windows.net/ 。 |
appId | 要求 | 智威汤逊的接收者。收件人指定为一个JSON字符串。收件人有助于验证澳元 JWT索赔。例如,对于Azure的广告,appId 的应用程序ID注册吗MATLAB生产服务器服务器应用程序。在Azure注册应用程序的信息,明白了快速入门:用微软的身份注册应用程序平台。 |
jwksUri | 要求 | URI来检索JSON Web按键(JWKS)。URI指定为一个JSON字符串。JWKS存储公钥用于验证JWT。例如,Azure广告,设置jwksUri 来https://login.microsoftonline.com/common/discovery/keys 。 |
jwksStrictSSL | 可选 | 标志验证指定的对等服务器证书jwksUri在HTTPS通信与JWKS服务器。指定选择JSON布尔。默认选择是真正的 。指定真正的 验证同行证书。如果JWKS服务器使用自签名证书,将这个值设置为假 。 |
jwksTimeOut | 可选 | 最长时间允许请求来检索JWKS。指定的时间作为JSON非负整数。默认超时时间值为120秒。 |
userAttributeName | 可选 | JWT声称,惟一地标识一个用户名称。要求名称指定为一个JSON字符串。的默认值userAttributeName 是子 。Azure广告,集userAttributeName 来隐喻 。 |
groupAttributeName | 可选 | JWT声称名称列出了组,一个用户属于。要求名称指定为一个JSON字符串。的默认值groupAttributeName 是组 。 |
您可以指定userAttributeName
,groupAttributeName
,或两者兼而有之。如果你想为特定用户配置访问控制,指定userAttributeName
。如果你想为用户组配置访问控制,指定groupAttributeName
。
配置文件的一个例子,Azure广告身份提供者。
{“版本”:“1.0.0”,“jwtIssuer”:“https://sts.windows.net/54ss4lk1 - 8428 - 7256 - 5 - fvh d5785gfhkjh6/”、“appId”:“j21n12bg - 3758 - 3 - r78 v25j - 35 - yj4c47vhmt”、“jwksUri”:“https://login.microsoftonline.com/common/discovery/keys”,“jwksStrictSSL”:真的,“jwksTimeOut”: 120年,“userAttributeName”:“隐喻”、“groupAttributeName”:“组织”}
访问控制策略文件
设置应用程序的访问控制MATLAB生产服务器,服务器管理员必须定义一个访问控制策略以JSON格式的文件。默认策略文件的路径和名称/ config / ac_policy.json
。你可以改变设置的默认值访问控制策略
财产。
当服务器启动时,它试图阅读策略文件。如果文件不存在或包含错误,服务器没有启动,写一个错误消息main.log
文件的目录日志根
属性指定。
在服务器启动之后,它扫描策略文件每5秒,如果应用程序启用访问控制。如果政策文件缺失或包含错误,服务器仍在运行,但否认了所有请求和将一个错误消息写入main.log
文件。
政策文件都有一个单独的版本和一个JSON对象,定义了模式政策阻止。由一系列政策政策的块。每个政策都包含一个规则块定义了一组规则的政策。由一个规则的块主题街区,一个资源块和一个行动阻止。
模式版本是一个JSON字符串的格式主要的#
。小#
。补丁#
,每个号码是一个非负整数。设置模式版本1.0.0
。
政策阻止
政策块包含一个政策所需的应用程序的访问控制列表。目前,政策文件支持指定只有一个政策。万博1manbetx
“政策”:[{" id ": "policy_id”、“描述”:“policy_description”,< rule_block >}]
每个策略需要一个id
价值。
是一个JSON字符串,并为每个政策必须是唯一的。任何前导或尾随空格移除。policy_id
的描述
政策是可选的。
规则块
规则块包含一个规则对象的列表。
“规则”:[{" id ": "rule_id”、“描述”:“rule_description”,< subject_block >, < resource_block >、< action_block >}]
规则块支持多个规则,例如,万博1manbetx“规则”:[<规定>,<规定>,…)
。
每个规则需要一个id
价值。rule_id
是一个JSON字符串,并为每个规则必须是唯一的。任何前导或尾随空格移除。
的描述
规则是可选的。
主题街区
主题街区的一个规则定义谁可以访问的资源。您可以控制访问列表的用户,用户组,或两者兼而有之。
“主题”:{“团体”:["group_id”、“group_id”,……》,“用户”:["user_id”、“user_id”,…]}
使用用户
属性来指定一个用户被他们独特的列表user_id
值。使用组
属性来指定用户组由他们独特的标识group_id
值。您可以指定用户
属性,组
属性,或两者兼而有之。
资源块
一个规则指定的资源块服务器请求希望访问的资源。目前,唯一的资源服务器请求可以是一个可部署的存档(周大福文件)。您可以指定多个部署档案。
“资源”:{“周大福”:“archive_name”、“archive_name”,…]}
您可以使用通配符*
指定多个档案。例如,如果你想访问所有档案的名字开始或结束测试
,指定archive_name
作为测试*
或*测试
,分别。使用*
随着archive_name
访问所有存档部署到服务器。
行动阻止
规则描述了行动的行动阻止服务器请求想要执行的资源。目前,执行
是唯一支持的行动。万博1manbetx
“行动”(“执行”):
JSON策略文件的例子
下面的例子定义了一个访问控制策略有三个规则。
用户
aaa@xyz.com
和bbb@xyz.com
可以执行部署归档文件吗魔法
。属于组的所有用户id
aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa
和bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb
以及用户ccc@xyz.com
,可以执行部署的档案蒙特卡洛
和fastFourier
。属于质量工程组的所有用户
cccccccc-cccc-cccc-cccc-cccccccccccc
可以执行所有部署档案名称开始吗测试
。
所有其他请求服务器拒绝访问。
{“版本”:“1.0.0”、“政策”:[{" id ":“policy1”、“描述”:“XYZ公司的访问控制策略”,“规则”:{" id ":“规则1”、“描述”:“用户aaa@xyz.com和bbb@xyz.com可以执行部署归档魔法”、“主题”:{"用户":[“aaa@xyz.com”、“bbb@xyz.com”]},“资源”:{“周大福”:[“魔法”]},“行动”:["执行"]},{" id ":“rule2”、“描述”:“A和B组和用户ccc@xyz.com可以执行部署档案蒙特卡洛和fastFourier”、“主题”:{“团体”:“aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa”、“bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb”,“用户”:[“ccc@xyz.com”]},“资源”:{“周大福”:[“蒙特卡洛”、“fastFourier”]},“行动”:["执行"]},{" id ":“规则3”、“描述”:“量化宽松C组可以执行任何部署归档文件的名字开始测试”、“主题”:{“团体”:[" cccccccc-cccc-cccc-cccc-cccccccccccc "]},“资源”:{“周大福”:[“测试*”]},“行动”:["执行"]}]}]}
另请参阅
访问控制策略
|access-control-config
|access-control-provider