{"ref":"artifact:miyasuta-auth-transport2","page":"/artifacts/miyasuta-auth-transport2","json":"/artifacts/miyasuta-auth-transport2.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"miyasuta-auth-transport2","name":"auth-transport2","artifact_type":"sample","ecosystem":"btp","domain":"operations-and-runtime","origin_ring":"independent","use_as":"reference","description":{"one_line":"Three MTA projects that declare a role collection in one xs-security.json out of role templates owned by the other two, so it can be transported rather than recreated in each subaccount.","short":"MTA projects sharing a role collection across role templates","what_it_solves":"parent/xs-security.json declares the role collection Master_Admin and reaches the Admin role template of each child through the `$XSAPPNAME(application,xsuaachild1).Admin` form, which is how a role collection references a role template in another xsuaa instance. child1 and child2 each declare that Admin template over an `$XSAPPNAME.Admin` scope of their own, and each of the three mta.yaml files carries nothing but the xsuaa resource that deploys its own xs-security.json. [Mio Yasutake](actor:mio-yasutake)'s [second post on transporting role collections](https://community.sap.com/t5/technology-blog-posts-by-members/transporting-role-collections-between-btp-subaccounts-part2-standard/ba-p/13547440) lists these same files and moves the parent through [SAP Continuous Integration and Delivery](artifact:btp-continuous-integration-and-delivery) and [SAP Cloud Transport Management](artifact:btp-cloud-transport-management) into a second subaccount, which puts an order on it: the child MTAs have to be deployed in a subaccount before the parent is imported there. Two conditions come with the route: a role collection created from xs-security.json cannot be maintained by hand in the BTP cockpit, and one maintained by hand cannot be updated from xs-security.json. An xsappname containing an underscore fails the deployment."},"links":{"repo":"https://github.com/miyasuta/auth-transport2"},"demonstrates":["capability:account-provisioning","capability:authorization"],"requires":[{"ref":"artifact:btp-authorization-and-trust-management","for":"Each of the three projects deploys its own xs-security.json as an xsuaa service instance; the role collection exists because the parent's instance declares it, and the role templates because the children's do.","requirement":"required","sources":[{"url":"https://raw.githubusercontent.com/miyasuta/auth-transport2/master/parent/mta.yaml","title":"miyasuta/auth-transport2 — parent/mta.yaml","checked":"2026-10-19","quote":"resources:\n  - name: xsuaaparent\n    type: org.cloudfoundry.managed-service\n    parameters:\n      path: ./xs-security.json\n      service: xsuaa\n      service-plan: application"},{"url":"https://raw.githubusercontent.com/miyasuta/auth-transport2/master/parent/xs-security.json","title":"miyasuta/auth-transport2 — parent/xs-security.json","checked":"2026-10-19","quote":"\"role-collections\": [\n    {\n      \"name\": \"Master_Admin\",\n      \"description\": \"Master Admin user\",\n      \"role-template-references\": [\n        \"$XSAPPNAME(application,xsuaachild1).Admin\",\n        \"$XSAPPNAME(application,xsuaachild2).Admin\"\n      ]\n    }\n  ]"}]}],"alternative_to":["artifact:miyasuta-auth-transport"],"maintainers":["actor:mio-yasutake"],"contributors":["actor:mio-yasutake"],"provenance":{"discovered_via":[{"source":"source:github-orgs","channel":"miyasuta"}],"first_seen":"2026-10-08"},"drafted_with_ai":true},"effective_normative_relations":[],"readings":{"liveness":[{"label":"Maintenance","tier":"unknown","evidence":"no release data"},{"label":"Continuity","tier":"fair","evidence":"one contributor, personally owned"},{"label":"Repository","tier":"poor","evidence":"pushed 2022-04, not archived"}],"compatibility":[{"label":"Declared for","tier":"unknown","evidence":"no BTP release lines in the atlas"},{"label":"Survived majors","tier":"unknown","evidence":"no BTP release lines in the atlas"},{"label":"Maintainer's CI","tier":"fair","evidence":"no CI configured"}],"practice":[{"label":"Tests","tier":"fair","evidence":"none found in the tree"},{"label":"Docs","tier":"poor","evidence":"no README"},{"label":"Changelog","tier":"fair","evidence":"none in the repo"}],"reach":[{"value":null,"unit":"installs/week"},{"value":0,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-25","npm":"not published under this name","stars":0,"forks":0,"open_issues":0,"archived":false,"pushed_at":"2022-04-06","license_spdx":null,"org_owned":false,"default_branch":"master","created_at":"2022-04-06T21:30:49Z","open_prs":0,"tree_truncated":false,"test_files":0,"workflows":0,"other_ci":false,"readme_bytes":0,"docs_files":0,"changelog":false,"license_file":false,"dts_files":0,"first_commit":"2022-04-06","last_commit":"2022-04-06","commits":2,"contributors":1,"repo_read":"2026-10-25"},"edges":{"maintainers":[{"ref":"actor:mio-yasutake","name":"Mio Yasutake","json":"/actors/mio-yasutake.json"}],"contributors":[{"ref":"actor:mio-yasutake","name":"Mio Yasutake","json":"/actors/mio-yasutake.json"}],"explained_by":[],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_ons":[],"answered_through_parts":[]}}